【Spark】快速簡介
阿新 • • 發佈:2018-12-05
兩個要點:
- 快速通用的計算機系統叢集,用於大規模資料處理
- 高層API可用Java,Scala,Python以及R
Spark上的庫:
- Spark SQL: 資料庫操作
- Spark Streaming: 流計算
- MLlib: 機器學習庫
- GraphX: 圖計算
- SparkR
Spark的語義抽象/概念
- RDD: Resilient Distributed Dataset,彈性分散式資料庫
- DAG: 有向無環圖
- SparkContext
- Transformations
- Actions
這些概念後面陸續展開。
大資料解決方案
包含多個重要元件:
-
硬體層:
- 儲存
- 計算
- 網路
-
資料引擎:大腦
-
統計、計算演算法
-
資料視覺化(分析層)
Spark起源
2009年,Matei在進行博士研究時創立,基於記憶體的基本型別,可以為應用程式帶來100倍的效能提升。使用者可以將資料載入到叢集記憶體用來反覆查詢,非常適用於大資料和機器學習。
Spark只是一個通用計算框架,利用Spark實現的應用才是其真正價值所在。
Spark的三個優點
- 易用,高層API剝離了對叢集的關注,可以專注於計算本身
- 快,且支援互動式使用和複雜演算法
- 通用,Spark是通用引擎,可以完成各種各樣的計算
- SQL查詢
- 文字處理
- 機器學習
學習Spark,只有一臺電腦也是可以的。
學習目標:
- 搭建Spark叢集
- 使用Spark Shell
- 編寫Spark應用解決並行問題
END.
參考:
https://www.youtube.com/watch?v=TgiBvKcGL24&list=PLbk_EDDIZpfYHlJ_mnyWFgt1CeTPZXXTD
https://github.com/databricks/learning-spark