0814-基於CDP7.1.3的Spark3.0正式發佈

今天Cloudera正式宣佈發佈CDS3,基於Apache Spark 3.0.1,參考:

https://spark.apache.org/news/spark-3-0-1-released.html


這是一個正式版本,可以生產系統中使用。而且這個版本受Cloudera Support支持。對於Spark3的新特性,可以參考文章《開源生態的新發展:Apache Spark 3.0、Koala和Delta Lake》。


以下是Spark3的關鍵新特性:


1.Spark3的TPC-DS性能進一步提升;


2.語言支持

  a)Scala version is upgraded to 2.12

  b)JDK11 is fully supported.

 c)Python3.6+ is supported. Python 2 and Python 3 prior to version 3.6 are deprecated


3.Adaptive execution of Spark SQL

  a)對於AQE而言,最重要的問題就是什麼時候去重新計算優化執行計劃。Spark任務的算子如果管道排列,依次並行執行。然而,shuffle或者broadcast exchange會打斷算子的排列執行,我們稱其爲物化點(Materialization Points),並且用"Query Stages"來代表那些被物化點所分割的小片段。每個Query Stage會產出中間結果,當且僅當該stage及其並行的所有stage都執行完成後,下游的Query Stage才能被執行。所以當上遊部分stage執行完成,partitions的統計數據也獲取到了,並且下游還未開始執行,這就給AQE提供了reoptimization的機會。在查詢開始時,生成完了執行計劃,AQE框架首先會找到並執行那些不存在上游的stages。一旦這些stage有一個或多個完成,AQE框架就會將其在physical plan中標記爲完成,並根據已完成的stages提供的執行數據來更新整個logical plan。基於這些新產出的統計數據,AQE框架會執行optimizer,根據一系列的優化規則來進行優化;AQE框架還會執行生成普通physical plan的optimizer以及自適應執行專屬的優化規則,例如分區合併、數據傾斜處理等。於是,我們就獲得了最新優化過的執行計劃和一些已經執行完成的stages,至此爲一次循環。接着我們只需要繼續重複上面的步驟,直到整個query都跑完。


4.Dynamic Partition Pruning (DPP)

  a)Spark 3.0引入了動態分區裁剪功能,這是SQL分析工作負載的一項重大性能改進。DPP背後的想法是將維度表上的篩選器集直接應用到事實表上,以便跳過掃描不需要的分區。DPP的優化是在邏輯計劃優化和物理計劃上實現的。它大大增強了許多TPC-DS查詢的速度,並且可以很好的適應星型模型,而無需對錶進行反範式化(Denormalization)。


5.Binary files data source

  a)Spark 3.0支持二進制文件數據源。它可以讀取二進制文件,並將每個文件轉換爲包含文件原始內容和元數據的一行。


6.DataSource V2 Improvements

  a)Pluggable catalog integration

  b)改進謂詞下推功能,可通過減少數據加載來加快查詢速度


7.YARN Features

  a)Spark 3.0可以自動在YARN集羣上發現GPU,並將任務調度到指定的GPU節點。


8.Kafka connector delegation token (0.10+)

  a)對應用只需要配置Spark的參數就可以完成認證登錄,而不是非需要使用JAAS配置登錄。


該試驗版本不支持以下組件:

  • Hive Warehouse Connector

  • Kudu

  • HBase Connector

  • Oozie

  • Livy

  • Zeppelin


參考文檔:

https://docs.cloudera.com/cdp-private-cloud-base/7.1.3/cds-3/topics/spark-spark-3-overview.html


下載地址:

http://archive.cloudera.com/p/spark3/3.0.7110.0/csd/SPARK3_ON_YARN-3.0.1.3.0.7110.0-81.jarhttps://archive.cloudera.com/p/spark3/3.0.7110.0/csd/LIVY_FOR_SPARK3-0.6.0.3.0.7110.0-81.jarhttp://archive.cloudera.com/p/spark3/3.0.7110.0/parcels/



更多下載信息可以後臺留言瞭解。


本文分享自微信公衆號 - Hadoop實操(gh_c4c535955d0f)。
如有侵權,請聯繫 [email protected] 刪除。
本文參與“OSC源創計劃”,歡迎正在閱讀的你也加入,一起分享。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章