部署模式对比
模式 | Spark安装机器数 | 需要启动的进程 | 所属 | 应用场景 |
Local | 1 | 无 | Spark | 测试 |
Standalone |
3 | Master&Worker | Spark | 单独部署 |
Yarn | 1 | Yarn&HDFS | Hadoop | 混合部署 |
端口号:
- 4040(计算端口) : Spark查看当前Spark-shell 运行任务情况端口号
- 7077 : Spark Master 内部通信服务端端口号
- 8080(资源) : Standalone模式下,Spark Master Web 端口号
- 18080 : Spark历史服务器端口号
- 8088 : Hadoop YARN 任务运行情况下查看端口号
Spark提交作业说明:
# 实例 spark-submit \ --master local[5] \ --driver-cores 2 \ --driver-memory 8g \ --executor-cores 4 \ --num-executors 10 \ --executor-memory 8g \ --class PackageName.ClassName XXXX.jar \ --name "Spark Job Name" \ InputPath \ OutputPath
1、--class 表示要执行程序的主类,可以更换为自定义的程序
2、--master local[2] 部署模式,默认为本地模式,数字表示分配CPU核数量
3、--driver-cores 2 设置driver使用内核数量为2,默认为1
4、--driver-memory 8g 设置driver内存大小为 8G,默认为512M
5、--executor-cores 4 设置executor使用的内核数为4,默认为1,官方建议 2-5个
6、--num-executors 10 设置executor的数量为10,默认为2
7、--executor-memory 8g 设置executor的内存大小为8G,默认为1G
8、--name 设置作业名称
9、 InputPath&OutputPath 输入输出配置