【Spark】Spark2.x版的新特性
一、API
? ? 1. 出現(xiàn)新的上下文接口:SparkSession,統(tǒng)一了SQLContext和HiveContext,并且為SparkSession開發(fā)了新的流式調(diào)用的configuration API
? ? 2.?統(tǒng)一了DataFrame和DataSet。DataFrame相當(dāng)于DataSet[Row],以及DataSet的增強(qiáng)聚合API
? ? 3. 增強(qiáng)了累加器accumulator的功能,支持Web UI,便捷的API,性能更高
二、SQL
? ? 1. 支持SQL2003標(biāo)準(zhǔn)
? ? 2. 支持ansi-sql 和hive ql的sql parser(SQL解析器)
? ? 3. 支持DDL,支持子查詢(in/not in 、 exists/ not exists)
三、性能
? ? 1. 通過whole-stage-code generation(全流程代碼生成)技術(shù)將SparkSQL和DataSet的性能提升了2~10倍。(在下一篇博文中會淺談全流程代碼生成技術(shù))
? ? 2. 通過vectorization(向量化)技術(shù)提升parquet文件的掃描吞吐量
? ? 3. 提升orc文件的讀寫性能
? ? 4. 提升catalyst查詢優(yōu)化器的性能
? ? 5. 通過native實(shí)現(xiàn)方式提升窗口函數(shù)的性能
四、 Spark Streaming
? ? 1. Structured Streaming在Spark2.0中是測試版,2.0之后是released版,它基于SparkSQL和Catalyst引擎構(gòu)建,支持DataFrame風(fēng)格的API進(jìn)行流式計(jì)算。
? ? 2. 基于DStream的API支持kafka0.10版本
五、Spark MLlib
? ? 1.? 基于DataFrame的API支持持久化保存、加載模型、Pipeline,支持更多的算法,支持向量和矩陣使用性能更高的序列化機(jī)制。
? ? 2.? Spark R支持MLlib算法,包括線性回歸、樸素貝葉斯等
? ? 3. 未來Spark MLlib將主要基于DataSet API來實(shí)現(xiàn),基于RDD和API將轉(zhuǎn)為維護(hù)階段
六、Other
? ? 1. 支持csv文件
? ? 2. 支持hive風(fēng)格的bucket表
? ? 3. 支持緩存和程序運(yùn)行的堆外內(nèi)存管理
? ? 4. 完全移除了對akka的依賴
? ? 5. 使用Scala2.11代替了Scala2.10,要求基于Scala2.11版本進(jìn)行開發(fā),而不是Scala2.10
? ? 6. Mesos粗粒度模式下,支持啟動(dòng)多個(gè)Executor
????
?
轉(zhuǎn)載于:https://www.cnblogs.com/snova/p/9195693.html
總結(jié)
以上是生活随笔為你收集整理的【Spark】Spark2.x版的新特性的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: win10安装docker并结合Idea
- 下一篇: 求一个好听有福气的餐馆名字!