解析Spark大數據分析框架的核心部件

Spark大數據分析框架的核心部件包含RDD內存數據結構、Streaming流計算框架、GraphX圖計算與網狀數據挖掘、MLlib機器學習支持框架、Spark SQL數據檢索語言、Tachyon文件系統、SparkR計算引擎等主要部件,這裏作一個簡單的介紹。html

Jive Circle案例學習

1、RDD內存數據結構算法

大數據分析系統通常包括數據獲取、數據清洗、數據處理、數據分析、報表輸出等子系統。Spark爲了方便數據處理、提高性能,專門引入了RDD數據內存結構,這一點與R的機制很是相似。用戶程序只須要訪問RDD的結構,與存儲系統的數據調度、交換都由提供者驅動去實現。RDD能夠與Haoop的 HBase、HDFS等交互,用做數據存儲系統,固然也能夠經過擴展支持不少其它的數據存儲系統。數據庫

由於有了RDD,應用模型就與物理存儲分離開來,並且可以更容易地處理大量數據記錄遍歷搜索的狀況,這一點很是重要。由於Hadoop的結構主要適用於順序處理,要翻回去反覆檢索數據的話效率就很是低下,並且缺少一個統一的實現框架,由算法開發者本身去想辦法實現。毫無疑問,這具備至關大的難度。 RDD的出現,使這一問題獲得了必定程度的解決。但正由於RDD是核心部件、實現難度大,這一塊的性能、容量、穩定性直接決定着其它算法的實現程度。從目前看,仍是常常會出現RDD佔用的內存過載出問題的狀況。微信

2、Streaming流計算框架網絡

流是如今推特、微博、微信、圖片服務以及物聯網、位置服務等等的重要數據形態,所以流計算正顯得史無前例的重要。流計算框架是全部互聯網服務商的核心基礎架構,Amazon、Microsoft都已經推出了Event消息總線雲服務平臺,而facebook\twitter等更是將本身的流計算框架開源。數據結構

Spark Streaming專門設計用於處理流式數據。經過Spark Streaming,能夠快速地將數據推入處理環節,猶如流水線同樣進行快速的加工,並在最短的時間反饋給使用。架構

3、GraphX圖計算與網狀數據挖掘框架

物理網絡的拓撲結構,社交網絡的鏈接關係,傳統數據庫的E-R關係,都是典型的圖(Graph)數據模型。Hadoop主要適用於“數據量”很大的場合,對於關係的處理幾乎沒有支持,Hbase也是很是弱的關係處理能力。圖數據結構每每須要快速屢次對數據進行掃描式遍歷,RDD的引入使Spark能夠更高效地處理基於圖的數據結構,從而使存儲和處理大規模的圖網絡成爲可能。相似的專用於圖的系統還有neo4j等。機器學習

GraphX相對於傳統數據庫的關係鏈接,能夠處理更大規模、更深度的拓撲關係,能夠在多個集羣節點上進行運算,確實是現代數據關係研究的利器。oop

4、MLlib機器學習支持框架

經過把機器學習的算法移植到Spark架構上,一方面能夠利用底層的大規模存儲和RDD的數據快速訪問能力,還能夠利用圖數據結構和集羣計算的處理能力,使機器學習的運算能夠在大規模的集羣系統上展開,即大力拓展了機器學習算法的應用能力。

5、Spark SQL數據檢索語言

這個跟基於Hive的實現有些相似,可是基於RDD理論上能提供更好的性能,同時能更方便處理如join和關係檢索等操做。這個被設計爲與用戶交互的一個標準化入口。

6、Tachyon文件系統

Tachyon是一個相似於HDFS的實現,不過感受上更加接近於使用者,而HDFS主要是面向存儲塊的。

7、SparkR計算引擎

將R語言的能力應用到Spark基礎計算架構上,爲其提供算法引擎。

轉載自中國大數據

關於更多大數據相關資訊>>>

相關文章
相關標籤/搜索