Spark2.0 一些新特性
阿新 • • 發佈:2018-12-26
一 變化
① Spark Core& Spark SQL API
1、dataframe 與dataset統一,dataframe誕生於1.6,消亡於2.0…
dataframe只是dataset[Row]的類型別名
無論是typed方法(map、filter、groupByKey等)還是untyped方法(select、groupBy等),都通過Dataset來提供。而且Dataset API將成為Spark的新一代流式計算框架——structured streaming的底層計算引擎
2、SparkSession :統一SQLContext 和HiveContext,新上下文入口
為SparkSession新的流式呼叫configuration api
3、accummulator 功能增強
4、dataset的增強聚合api
②Spark Core Spark SQL SQL
- 支援 sql 2003標準
- 支援ddl命令
- 支援ansi-sql和hive sql的sql parser
- 支援子查詢 : in/not in 、exists/not exists
③ SparkCore & Spark SQL new Feature
- 支援csv檔案
- 支援快取和程式執行的堆外記憶體管理
3.看官網去吧。
Spark Core Spark SQL 效能?
1、通過whole-stage code generation 技術將spark sql和dataset 的效能提升 2~10倍
2、 通過 vectorization 技術提升parquet檔案的掃描吞吐量
3、 提升orc檔案讀寫效能
④ SparkStreaming
Structured Streaming
- 基於spark sql和catalyst引擎構建
- 支援使用dataframe風格的api進行流式計算
⑤依賴管理 打包和操作
- 不需要在生產部署時打包fat jar(可以不打spark相關依賴jar包),可以使用provided風格
- 完全移除了akka的依賴 換 netty
- 支援kryo3.0版本
- 使用scala 2.11 替代了scala2.10
- spark 1.x中標識為過期的所有api
- hash-based shuffle manager