一,
多进程:方便控制资源,以为独享进程空间,但是消耗更多的启动时间,不适合运行那些低延时作业,导致mapreduce时效相差
多线程:spark的运行方式,所以spark适合低延迟类型的作业。好处:(1)任务启动速度快(2)同节点上的任务由于在一个进程中,所以共享内存——》适合内存密集任务(加载大量词表的程序)(3)同节点上所有任务运行在JVM进程(Executor)里面,适合Executor所占资源被多批任务调用 。stage(阶段)是spark独有的,一般一个job有多个stage ,各个stage之间按照顺序执行。
Spark:基于弹性分布式数据集模型,具有良好的通用性、容错性和并行处理数据的能力。
RDD(Resilient Distributed DataSet):弹性分布式数据集(相当于集合),本质是数据的描述(只读的、可分布的分布式数据集),而不是数据本身。不包含待处理的数据,真正的数据只有在执行的时候才加载进来。加载数据主要有两个来源:1:spark外部——》HDFS ,2:spark内部:——》其他RDD。
RDD特征: 懒操作:延迟计算,action的时候才操作。 瞬时性:用时才产生,用完就释放。记录 数据的变换而不是数据本身保证 容错 (lineage):RDD 采用数据变换,若部分数据丢失,可通过计算得到
Spar