spark的体系结构
1.客户端(Driver Program)
需要构建一个对象,核心是sc(SparkContext)
以应用程序为例:链接本地
//new conf val conf=new SparkConf() .setAppName(this.getClass.getSimpleName) .setMaster("local[1]") //new SparkContext val sc=new SparkContext(conf)
启动方式:
1.Spark-Shell
2.Spark-Submit
3.应用程序
2.服务端
1.客户端将job提交给Master(主节点)
2.主节点将任务分配给worker
3.worker:从节点的资源和任务管理者
4.执行任务的Executor,会将任务按照阶段(Stage)来执行
5.划分任务阶段:根据RDD的依赖关系(宽依赖和窄依赖)
6.租借点的主要职责:1.接受客户端的任务请求 2.管理和资源调度的任务 3.部署的方式:standaloneyarnmesos standalone(主要采用)