第7课在自己搭建的spark集群下运行程序实例

来源:互联网 发布:图像模糊算法 编辑:程序博客网 时间:2024/05/17 00:14

第一阶段:Spark streamingspark sqlkafkaspark内核原理(必须有一个大型项目经验);

第二阶段:spark运行的各种环境,各种故障的解决,性能优化(精通spark内核、运行原理);

第三阶段:流处理、机器学习为鳌头,需要首先掌握前两个阶段的内容;

跟随王家林老师的零基础讲解,注重动手实战,成为spark高数,笑傲大数据之林!

第一部分课堂笔记

1、spark是一个基于内存计算的开源的集群计算系统,目的是让数据分析更加快速。Spark优先考虑基于内存,是对计算机物理资源的最大化利用。每个节点的数据首先会被放于内存中,内存容量不足时,会被放到磁盘中。放于内存中的数据,经过第一个阶段的计算后,处理的结果可以继续在其他节点上进行下一个阶段的计算。这是迭代计算

2.迭代计算。基于内存的迭代计算计算速率更快。是Spark的精髓所在。数据被存放在不同节点中,数据不移动,程序移动。程序在计算完第一个阶段后,进行shuffle,数据被移动到其他节点,shuffle过程的不同策略,导致第一个阶段处理的结果,例如某一个节点的数据会被分发到不同的节点,以便进行下一个阶段的计算。个人编写的程序会经过Driver驱动器,提交到集群中,在集群中的某些节点中运行。处理数据的来源有HDFS,HBase,Hive,传统的关系数据库,处理后的数据可以放到HDFS,HBase,Hive
(使用数据仓库),DB,显示在客户端的输出端,s3等。

3.Spark的核心是RDD,RDD是一种弹性式分布式数据集,他的数据分片分不到各个的节点上。

RDD的弹性具体表现在:

弹性之一:自动的进行内存和磁盘数据存储的切换
弹性之二:基于Lineage的高校容错
弹性之三:Task如果失败会自动进行特定次数的重试
弹性之四:Stage如果失败会自动进行特定次数的重试 

第二部分作业:在自己搭建的spark集群下运行程序实例

0 0