spark术语及理解

1.Application
基于spark的用户程序,包含了一个driver program 和集群中多个 executor,一定是通过一个有main方法的类执行的。
2.Driver Program
运行application的main()函数并自动创建SparkContext。通常SparkContext 代表driver program,说白了,就是运行程序中main方法的进程,这就是driver,也叫driver进程
3.Application Jar
这个就是把写好的spark工程,打包成一个jar包,其中包括了所有的第三方jar依赖包,比如java中,就用maven+assembly插件打包最方便
4.Cluster Manager
集群管理器,就是为每个spark application,在集群中调度和分配资源的组件,比如Spark Standalone、YARN、Mesos等
5.Deploy Mode
部署模式,无论是基于哪种集群管理器,spark作业部署或者运行模式,都分为两种,client和cluster,client模式下driver运行在提交spark作业的机器上;cluster模式下,运行在spark集群中
6.Executor
为某个Application运行在worker node 上的一个进程。该进程负责运行task并负责将数据存储在内存或者硬盘上,每个application 都有自己独立的 executors
7.worker node
集群中的工作节点,能够运行executor进程,运行作业代码的节点
8.rdd
spark 的几本运算单元,通过scala集合转化,读取数据集生成或者由其他RDD进过算子操作得到
9.Job
可以被拆分成task并行计算的单元,一般为spark action 触发的一次执行作业
10.Stage
每个job会被拆分成很多组task,每组任务被称为stage,也可称TaskSet,该属于经常在日志中看到
11.Task
driver发送到executor上执行的计算单元,每个task负责在一个阶段(stage),处理一小片数据,计算出对应的结果

猜你喜欢

转载自blog.csdn.net/IQiaoKeLi/article/details/86307905