一:spark运行模式分类
Spark的运行模式可以分为三类:
本地模式(local),适用于演示或测试,通常在Shell命令行中运行。
独立模式(standalone),可以在一个集群中独立运行,利用Spark自身的资源调度方式。
yarn/Mesos模式,运行在资源管理器上,例如Yarn或Mesos。
其中,Spark on Yarn又分为两种子模式:
- Yarn-client模式
- Yarn-cluster模式
二:Spark各运行模式的应用场景
1、本地模式:
本地模式的分类包括:
Local:只启动一个executor。
Local[K]:启动K个executor。
Local[*]:启动与CPU数目相同的executor。
2、独立模式(Standalone):
- 是一种独立的运行模式,具备完整的服务,可以独立部署在集群中,无需依赖其他资源管理系统。
- 由master和slaves服务组成,最初master存在单点故障问题,后来通过zookeeper解决。
- 各个节点上的资源被抽象成粗粒度的slot,slot的数量决定了能同时运行的task数量。
3、Spark on Yarn:
- 在Yarn资源管理器框架上运行,由Yarn负责资源管理,而Spark负责任务调度和计算。
3.1、Spark Yarn-client模式:
- 适用于交互和调试,客户端可以看到应用程序的输出。
3.2、Spark Yarn-cluster模式:
- 通常用于生产环境,作业直接在Yarn上执行,客户端无法感知。
- 在线上生产环境中,大多数采用YARN-cluster模式(除非你的大数据框架未使用hadoop,可以考虑使用Mesos)。
三:Yarn-client与Yarn-cluster的区分
Yarn-client与Yarn-cluster的区分:
广义区分:
- Yarn-client:适用于交互和调试,客户端可以看到应用程序的输出。
- Yarn-cluster:通常用于生产环境。
深层次区分:
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END