Spark相关知识
基本概念: Spark作为新一代大数据计算引擎,因为内存计算的特性,具有比hadoop更快的计算速度。是一个分布式计算框架,旨在简化运行于计算机集群上的并行程序的编写。 RDD:是spark核心数据处理模型,弹性分布式数据集(Resilient Distributed Dataset)是分布式内存的一个抽象概念,提供了一个高度受限的共享内存模型。一个RDD包含多个分区(Partition)。 DAG:有向无环图(Directed Acyclic Graph)反应RDD之间的依赖关系。 Executor:运行在工作节点(WorkNode)的一个进程,负责运行Task。 Application:用户编写的Spark程序。 Task:运行在Executor上的工作单元。 Job:一个Job包含多个RDD及作用于相应RDD上的各种操作。 Stage:是Job的基本调度单位,一个Job会分为多组Task,每组Task被称为Stage,或者也被称为TaskSet,代表了一组由关联的、相互之间没有shuffle依赖关系的任务组成的任务集。 以下是Spark中各种概念之间的相互关系: Spark组件: Spark主要包含了Spark Core、Spark SQL、Spark Streaming、MLLib和GraphX 等组件 。 Spark Core:Spark Core包含Spark的基本功能