一,、Spark基礎(chǔ)知識梳理
1.Spark是什么?
2.Spark性能比Hadoop快原因分解:
3.Spark架構(gòu)圖: (2)Shark(Hive on Spark):Shark基本上就是在Spark的框架基礎(chǔ)上提供和Hive一樣的HiveQL命令接口,。可以理解為Shark On Spark,,就是Hive On Hadoop,,兩者地位是一樣的。ps:Shark可以通過UDF用戶自定義函數(shù)實現(xiàn)特定的數(shù)據(jù)分析學(xué)習(xí)算法,,使得SQL數(shù)據(jù)查詢和運算分析功能結(jié)合在一起(最大化RDD的重復(fù)使用),。 (3)Streaming(Spark):Spark Streaming是構(gòu)建在Spark上的處理實時數(shù)據(jù)的框架。其基本原理是將Stream數(shù)據(jù)分成小的時間片段(幾秒),,以類似batch批處理的方式來處理小部分?jǐn)?shù)據(jù),。
(4)RDD(Resilient Distributed Dataset,彈性分布式數(shù)據(jù)集):RDD是Spark操縱數(shù)據(jù)的一個高度抽象,,即Spark所操作的數(shù)據(jù)集都是包裝成RDD來進行操作的,,例如Spark可以兼容處理Hadoop的HDFS數(shù)據(jù)文件,那么這個HDFS數(shù)據(jù)文件就是包裝成Spark認識的RDD來完成數(shù)據(jù)抽取和處理的。RDD的一個英文定義是:RDDs are fault-tolerant, parallel data structures that let users explicitly persist intermediate results in memory, control their partitioning to optimize data placement, and manipulate them using a rich set of operators. 用我薄弱的英語能力翻譯一下就是:RDD是一個能夠讓用戶可以準(zhǔn)確的將中間結(jié)果數(shù)據(jù)持久化到內(nèi)存中的一個可用錯的并行數(shù)據(jù)結(jié)構(gòu),,可以控制(RDD數(shù)據(jù)集)分區(qū),,優(yōu)化數(shù)據(jù)存儲,并且有一組豐富的操作集可以操作這份數(shù)據(jù),。ps:RDD是Spark的一個核心抽象,,Spark的數(shù)據(jù)操作都是基于RDD來完成。
(5)Map Reduce:MR 是Spark可以支撐的運算模式,,比傳統(tǒng)的Hadoop MR的性能更好,,并且操作集更加豐富。Spark的MR計算引擎的架構(gòu)圖: ps:圖中的FP不知道是什么,,誰知道可以告訴我一下哈,!
(6)Spark的運行模式:apache Mesos和YARN計算兩套資源管理框架,Spark最初設(shè)計就是跑在這兩個資源管理框架之上的,,至于Spark的本地運行模式和獨立運行模式則是方便了調(diào)試,。(至于圖中的EC2,應(yīng)該屬跑在亞馬遜云端的資源管理引擎上的吧,,我猜,?)。YARN資源管理框架也是Hadoop2.0的產(chǎn)物,,大大優(yōu)化了傳統(tǒng)Hadoop通過JobTracker和TaskTracker來調(diào)度計算任務(wù)的方式,,使集群更加平臺化,可以部署多中計算引擎,,比如傳統(tǒng)的Hadoop MR和Spark都可以跑在同一個集群上,,YARN這類資源管理框架出現(xiàn)之前是做不到的。
(7)Spark數(shù)據(jù)的存儲:Spark支持多種數(shù)據(jù)底層存儲,,這點比Hadoop支持的數(shù)據(jù)文件格式廣泛的多,。Spark可以兼容HDFS,Hbase,Amazon S3等多種數(shù)據(jù)集,,將這些數(shù)據(jù)集封裝成RDD進行操作,。
4.Spark照比傳統(tǒng)Hadoop MR的改進點:
5.Spark的適用場景: 二,、Hadoop YARN 基礎(chǔ)知識梳理
1.Yarn是什么:
簡述:新一代的YARN容器框架,,是傳統(tǒng)的MR Hadoop容器框架的升級版本,,之前的MR部署架構(gòu)依賴于JobTracker和TaskTracker的交互模式,而新一代的YARN容器框架,,則采用了ResourceManager和NodeManager的交互模式,,更高層次的抽象和架構(gòu)設(shè)計,是的YARN容器框架能夠支撐多種計算引擎運行,,包括傳統(tǒng)的Hadoop MR和現(xiàn)在的比較新的SPARK,。
2.Hadoop YARN產(chǎn)生的背景:
3.Hadoop 1.0到Hadoop 2.0(基于YARN)的演變:
4.以Yarn為核心的Hadoop2.0生態(tài)系統(tǒng):
簡述:圖片簡單明了,不多說了,。
5.運行在YARN上的計算框架:
6.Spark On Yarn的調(diào)度管理:
7.傳統(tǒng)MapReduce 在YARN上的調(diào)度: ps:梳理了一下Spark和YARN的基礎(chǔ)概念,初步了解一下哈,,細節(jié)部分有待深挖,! |
|