mapreduce作业提交与spark作业提交

rekjcdws  于 2021-05-29  发布在  Hadoop
关注(0)|答案(1)|浏览(459)

我正在浏览各种文档,以了解spark作业提交与mapreduce作业提交之间的区别,是否有一个类似于hadoop权威指南中提到的mapreduce作业提交的图表?
而且,spark应用程序也会像在mapreduce中一样从edge节点提交(没有严格的规则,但我猜这是遵循的实践)

ipakzgxi

ipakzgxi1#

mapreduce提交:

您可以将mapreducev1作业和yarn应用程序(mapreducev2和在yarn上运行的其他应用程序)提交到同一集群。作业或应用程序可以通过以下方式提交到集群:
hadoopjar命令提交mapreducev1作业或mapreducev2应用程序。
jar命令提交一个应用程序。
外部应用程序提交mapreduce v1作业或应用程序。
生态系统组件生成并提交应用程序或
mapreduce v1作业。
hadoop job命令提交mapreducev1作业或mapreducev2应用程序。
mapred job命令提交mapreduce v2应用程序。
mapreduce提交示例:

./yarn jar $YARN_EXAMPLES/hadoop-mapreduce-examples-2.2.0.jar

提交spark应用程序

捆绑用户应用程序后,可以使用bin/spark提交脚本启动它。这个脚本负责设置带有spark及其依赖项的类路径,并且可以支持spark支持的不同集群管理器和部署模式
在8核上本地运行应用程序

./bin/spark-submit \
  --class org.apache.spark.examples.SparkPi \
  --master local[8] \
  /path/to/examples.jar \
  100

以客户机部署模式在spark独立群集上运行

./bin/spark-submit \
  --class org.apache.spark.examples.SparkPi \
  --master spark://207.184.161.138:7077 \
  --executor-memory 20G \
  --total-executor-cores 100 \
  /path/to/examples.jar \
  1000

在spark独立集群上以集群部署模式运行

./bin/spark-submit \
  --class org.apache.spark.examples.SparkPi \
  --master spark://207.184.161.138:7077 \
  --deploy-mode cluster \
  --supervise \
  --executor-memory 20G \
  --total-executor-cores 100 \
  /path/to/examples.jar \
  1000

在一团Yarn上奔跑

export HADOOP_CONF_DIR=XXX
./bin/spark-submit \
  --class org.apache.spark.examples.SparkPi \
  --master yarn \
  --deploy-mode cluster \  # can be client for client mode
  --executor-memory 20G \
  --num-executors 50 \
  /path/to/examples.jar \
  1000

在spark独立集群上运行python应用程序

./bin/spark-submit \
  --master spark://207.184.161.138:7077 \
  examples/src/main/python/pi.py \
  1000

以集群部署模式在mesos集群上运行

./bin/spark-submit \
  --class org.apache.spark.examples.SparkPi \
  --master mesos://207.184.161.138:7077 \
  --deploy-mode cluster \
  --supervise \
  --executor-memory 20G \
  --total-executor-cores 100 \
  http://path/to/examples.jar \
  1000

相关问题