基于CDP7.1.1的Spark3.0技术预览版本分析是怎样的
本篇文章给大家分享的是有关基于CDP7.1.1的Spark3.0技术预览版本分析是怎样的,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
我们提供的服务有:网站制作、成都网站建设、微信公众号开发、网站优化、网站认证、衡东ssl等。为成百上千企事业单位解决了网站和推广的问题。提供周到的售前咨询和贴心的售后服务,是有科学管理、有技术的衡东网站制作公司
以下是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
以上就是基于CDP7.1.1的Spark3.0技术预览版本分析是怎样的,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注创新互联行业资讯频道。
文章标题:基于CDP7.1.1的Spark3.0技术预览版本分析是怎样的
文章来源:http://scjbc.cn/article/jshdpp.html