一、Spark簡介: 以下是百度百科對Spark的介紹: Spark 是一種與 Hadoop 相似的開源集群計算環境,但是兩者之間還存在一些不同之處,這些有用的不同之處使 Spark 在某些工作負載方面表現得更加優越,換句話說,Spark 啟用了記憶體分佈數據集,除了能夠提供互動式查詢外,它還可以優化 ...
一、Spark簡介:
以下是百度百科對Spark的介紹:
Spark 是一種與 Hadoop 相似的開源集群計算環境,但是兩者之間還存在一些不同之處,這些有用的不同之處使 Spark 在某些工作負載方面表現得更加優越,換句話說,Spark 啟用了記憶體分佈數據集,除了能夠提供互動式查詢外,它還可以優化迭代工作負載。
Spark 是在 Scala 語言中實現的,它將 Scala 用作其應用程式框架。與 Hadoop 不同,Spark 和 Scala 能夠緊密集成,其中的 Scala 可以像操作本地集合對象一樣輕鬆地操作分散式數據集。
二、Spark生態圈介紹
Spark力圖整合機器學習(MLib)、圖演算法(GraphX)、流式計算(Spark Streaming)和數據倉庫(Spark SQL)等領域,通過計算引擎Spark,彈性分散式數據集(RDD),架構出一個新的大數據應用平臺。
Spark生態圈以HDFS、S3、Techyon為底層存儲引擎,以Yarn、Mesos和Standlone作為資源調度引擎;使用Spark,可以實現MapReduce應用;基於Spark,Spark SQL可以實現即席查詢,Spark Streaming可以處理實時應用,MLib可以實現機器學習演算法,GraphX可以實現圖計算,SparkR可以實現複雜數學計算。
這一段摘選自:點這裡
三、Spark教程
有很多想要學習Spark的小伙伴都是自學的,但是網上的教程太多太雜太零散,其實並不適合一個Spark小白的人學習,而我們實驗樓剛好又有一些系列的教程,因此整理出來,希望對Spark學習者有所幫助~
我們就按照上圖的生態圈,從左到右的順序介紹課程吧;
1、Spark 講堂之 SQL 入門
Spark SQL 是一個分散式查詢引擎,在這個教程里你可以學習到 Spark SQL 的基礎知識和常用 API 用法,瞭解常用的數學和統計函數。最後將通過一個分析股票價格與石油價格關係的實例進一步學習如何利用 Spark SQL 分析數據。
2、Spark 講堂之 Streaming 入門
Spark Streaming 適用於實時處理流式數據。該教程帶你學習 Spark Streaming 的工作機制,瞭解 Streaming 應用的基本結構,以及如何在 Streaming 應用中附加 SQL 查詢。
附帶一張Streaming圖:
3、Spark 講堂之 MLlib 入門
這個教程你可以瞭解到 Spark 的 MLlib 庫相關知識,掌握 MLlib 的幾個基本數據類型,並且可以動手練習如何通過機器學習中的一些演算法來推薦電影。
4、Spark 講堂之 GraphX 入門
GraphX是Spark用於解決圖和並行圖計算問題的新組件。GraphX通過RDD的擴展,在其中引入了一個新的圖抽象,即頂點和邊帶有特性的有向多重圖,提供了一些基本運算符和優化了的Pregel API,來支持圖計算。
5、Spark 講堂之 GraphX 圖演算法
GraphX包含了一些用於簡化圖分析任務的的圖計算演算法。你可以通過圖操作符來直接調用其中的方法。這個教程中講解這些演算法的含義,以及如何實現它們。
6、Spark 講堂之 SparkR 入門
SparkR是一個提供輕量級前端的R包,集成了Spark的分散式計算和存儲等特性。這個教程將以較為輕鬆的方式帶你學習如何在SparkR中創建和操作DataFrame,如何應用SQL查詢和機器學習演算法等。
7、Spark 講堂之 DataFrame 入門
DataFrame讓Spark具備了處理大規模結構化數據的能力,在比原有的RDD轉化方式更加易用、計算性能更好。這個教程通過一個簡單的數據集分析任務,講解DataFrame的由來、構建方式以及一些常用操作。
8、Spark 講堂之 DataFrame 詳解
這個教程通過更加深入的講解,使用真實的數據集,並結合實際問題分析過程作為引導,旨在讓Spark學習者掌握DataFrame的高級操作技巧,如創建DataFrame的兩種方式、UDF等。
9、Sqoop 數據遷移工具
Sqoop 是大數據環境中重要的是數據轉換工具,這個教程對Sqoop 的安裝配置進行了詳細的講解,併列舉了Sqoop 在數據遷移過程中基本操作指令。
以上9個教程比較適合有一定的Spark基礎的人學習。
10、Spark 大數據動手實驗
這個教程是一個系統性的教程,總共15個小節,帶你親身體驗Spark大數據分析的魅力,課程中可以實踐:
Spark,Scala,Python,Spark Streaming,SparkSQL,MLlib,GraphX,IndexedRDD,SparkR,Tachyon,KeystoneML,BlinkDB等技術點,無疑是學習Spark最快的上手教程!
這個教程較為系統,非常適合零基礎的人進行學習。
最後
希望以上10個教程可以幫助想入門Spark的人,入門之後,你自然會知道如何讓自己的技術更上一層樓,也自然會有意無意去收集整理Spark學習資源和資料,因此這裡就不多介紹了。