Spark簡介 --大數據

1、Spark是什麼?

快速且通用的集羣計算平臺算法

2、Spark的特色:

  1. 快速:Spark擴充流行的Mapreduce計算模型,是基於內存的計算
  2. 通用:Spark的設計容納了其它分佈式系統擁有的功能,批處理、迭代式計算、交互查詢和流處理等,下降了維護成本
  3. 高度開放:Spark提供Python、Java、Scala、SQL的API和豐富的內置庫,Spark和其它的大數據工做整合得很好,包括hadoop、Kafka

3、Spark的組件

一、Spark Core

包含基本功能,包括任務調度、內存管理、容錯機制。內部定義了RDDS(彈性分佈式數據集),提供了不少APIs來建立和操做這些RDDs。
應用場景:爲其它組件提供底層的服務。sql

二、Spark SQL

Spark處理結構化數據的庫,像Hive SQL、MySQL同樣。
應用場景:企業中用來作報表統計網絡

三、Spark Streaming

實時數據流處理組件,相似Storm。Spark Streaming提供API來操做實時流數據。
應用場景:企業中用來從Kafka接收數據作實時統計機器學習

四、MLlib

一個包含通用機器學習功能的包,Machine learning lib。包含分類、聚類、迴歸等,還包括模型評估和數據導入。MLlib提供的上面這些方法,都支持集羣上的橫向擴展。分佈式

五、Graphx

處理圖的庫(例如社交網絡圖),並進行圖的並行計算,像Spark Streaming,Spark SQL同樣,它繼承了RDD API。提供了各類圖的操做,和經常使用的圖算法,例如RangeRank算法
應用場景:圖計算oop

六、Cluster Manager

集羣管理,Spark自帶一個集羣管理是單獨調度器。常見的集羣管理包括:Hadoop YARN、Apache Mesos學習

4、緊密集成的優勢

Spark底層優化,基於Spark底層的組件,也獲得相應的優化。緊密集成,節省了各個組件使用時的部署,測試時間。向Spark增長新的組件時,其它組件可當即享用新組件的功能。測試

5、Spark和Hadoop比較

Hadoop應用場景:離線處理、對及時性要求不高
Spark應用場景:時效性要求高、機器學習等領域大數據

相關文章
相關標籤/搜索