Python Spark 2.0 新功能介紹


Spark是一個集群計算的通用框架,可使用Python、Scala、Java、R語言開發。Spark 2.0 終於2016/7正式釋出,距離Spark 1.0釋出大約2年。這2年來Spark不斷進化,也代表了Spark更成熟,更穩定。Spark 2.0 的新功能可總結為:更容易、更快速、更智能。

Apache Spark是開放原始碼的叢集運算框架,由加州大學柏克萊分校的AMPLab開發。Spark是一個彈性的運算框架,適合做Spark Streaming資料流處理、Spark SQL互動分析、ML Lib機器學習等應用,因此Spark可成為一個用途廣泛的大數據運算平台。Spark允許用戶將資料載入至cluster叢集記憶體內儲存,並多次重覆運算,非常適合用於機器學習演算法。

如果您不了解Spark,可以點選下列連結介紹
Apache Spark 介紹
http://pythonsparkhadoop.blogspot.tw/2016/11/apache-spark.html

更快速

提升執行效能

Spark 2.0 以第二代的Tungsten engine,是基於現代的編譯器與MPP(massively parallel processing )大量平行處理資料庫。Spark 2.0 相較於Spark1.6 執行效率大幅提升(2 - 10倍) 執行效能。


更容易

Spark SQL

1. Spark SQL 在Spark 2.0 可以執行所有99 TPC-DS 查詢,能夠執行SQL:2003 標準的新功能,支援子查詢。
2. SparkSession:新增SparkSession 同時具備了SQLContext 與HiveContext 功能。不過為了向後相容,您仍可以使用SQLContext 與HiveContext。

Spark ML pipeline機器學習套件

1. Spark 2.0主要的機器學習架構是:以DataFrame為基礎的Spark ML pipeline機器學習套件。過去Spark MLlib 套件仍然可以繼續使用,未來的開發會以Spark ML pipeline 為主。
2. Spark ML pipeline 套件,現在可以將訓練完成的模型儲存與載入。

DataSet API

過去DataFrames API 您只能執行具型態的方法(例如:select、groupBy)。而RDD 只能執行不具型態的方法(例如:map, filter, groupByKey )。然而,有了Datasets API 之後,您就可以同時執行具型態的方法,與不具型態的方法。不過因為編譯時類型安全(compile-time type-safety)並不是Python 和R 的語言特性,所以Python 和R 不提供Datasets API。



其他新增功能

1. R 語言的分散式演算法, 增加了Generalized Linear Models(GLM), Naive Bayes,Survival Regression 與K-Means 等演算法。
2. 更簡單、更高效能新的Accumulator API,擁有更簡潔的型態架構,而且支援基本型態。

更智能


Structured Streaming APIs

Spark 2.0 的Structured Streaming APIs 是新的結構化資料流處理方式。它可以使用DataFrame/Dataset API,並且以Catalyst 最佳化提升效能。並且整合了streaming 資料流處理,interactive 互動查詢,與batch queries 批次查詢。



以上內容節錄自這本書,本書將詳細介紹Spark 2.0 安裝,並且所有Python範例程式都能在Spark 2.0 執行。並且特別介紹Spark 2.0 以DataFrame為基礎的Spark ML pipeline機器學習套件。很適合入門初學者:
  Python+Spark 2.0+Hadoop機器學習與大數據分析實戰 http://pythonsparkhadoop.blogspot.tw/2016/10/pythonspark-20hadoop.html

《購買本書 限時特價專區》
天瓏:https://www.tenlong.com.tw/items/9864341537?item_id=1023658
博客來:http://www.books.com.tw/products/0010730134?loc=P_007_090  

露天拍賣:http://goods.ruten.com.tw/item/show?21640846068139
蝦皮拍賣:https://goo.gl/IEx13P 



Share on Google Plus

About kevin

This is a short description in the author block about the author. You edit it by entering text in the "Biographical Info" field in the user admin panel.
    Blogger Comment
    Facebook Comment

0 意見:

張貼留言