0814-基于CDP7.1.3的Spark3.0正式发布

Posted Hadoop实操

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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的新特性,可以参考文章《》。


以下是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/



更多下载信息可以后台留言了解。


以上是关于0814-基于CDP7.1.3的Spark3.0正式发布的主要内容,如果未能解决你的问题,请参考以下文章

将运行时 7.3LTS(Spark3.0.1) 升级到 9.1LTS(Spark3.1.2) 后创建 PySpark 数据帧 Databricks 时,json 文件中的重复列会引发错误

大数据(8y)Spark3.0内核

细数Spark3.0的那些新特性

hivesql 迁移spark3.0 sparksql报错如Cannot safely cast '字段':StringType to IntegerType的问题

Spark3.0 preview预览版尝试GPU调用(本地模式不支持GPU)

Spark实战第二版(涵盖Spark3.0)