基于成本的Spark SQL优化器框架 [session]
来源:互联网 发布:备案域名不能打开 编辑:程序博客网 时间:2024/04/29 10:18
Strata Data Conference早期门票优惠6月9日截止!点击阅读原文可登录会议网站,尽快报名以确定留位!
基于成本的Spark SQL优化器框架
讲师:Ron Hu (Huawei Technologies), 王振华 (Huawei Technologies)
14:00–14:40 Friday, 2017-07-14
Spark及更多发展 (Spark & beyond)
地点: 紫金大厅B(Grand Hall B)
观众水平: 中级 (Intermediate)
必要预备知识
SQL, Apache Spark, 数据库。
您将学到什么
优化器有架构上的改变,和对性能的影响。
描述
在Spark SQL的Catalyst优化器中,许多基于规则的优化技术已经实现,但优化器本身仍然有很大的改进空间。例如,没有关于数据分布的详细列统计信息,因此难以精确地估计过滤(filter)、连接(join)等数据库操作符的输出大小和基数 (cardinality)。由于不准确的估计,它经常导致优化器产生次优的查询执行计划。
我们在Spark SQL引擎内添加了一个基于成本的优化器框架。在我们的框架中,我们使用analyze table SQL语句收集表和列统计信息,并将它们保存到metastore中。对于列的统计信息,我们收集不同值的数量(number of distinct value),空值的数量,最大/最小值,平均/最大列长度等等。此外,我们保存等高直方图以更好地描述列的数据分布,从而有效地处理数据倾斜。此外,使用列的不同值的数量和表的行数量,我们可以确定列的唯一性,尽管Spark SQL不支持主键。这有助于确定例如 join 联接操作和多列 group by 分组操作的输出大小。
我们已把这个基于成本的优化器框架贡献给社区版本Spark 2.2。在我们的框架中,我们计算每个数据库操作符的基数和输出大小。通过可靠的统计和精确的估算,我们能够在这些领域做出好的决定:选择散列连接(hash join)操作的正确构建端(build side),选择正确的连接算法(如broadcast hash join与 shuffled hash join), 调整连接的顺序等等。在这次演讲中,我们将展示Spark SQL的新的基于成本的优化器框架及其对TPC-DS查询的性能影响。
讲师介绍:
Ron Hu (Huawei Technologies)
Ron-Chung Hu is a database system architect at Huawei Technologies, where he works on building a big data analytics platform based on Apache Spark. Previously, he worked at Teradata, Sybase, and MarkLogic, focusing on parallel database systems and search engines. Ron holds a PhD in computer science from the University of California, Los Angeles.
王振华 (Huawei Technologies)
王振华 (Zhenhua Wang) is a research engineer at Huawei Technologies, where he works on building a big data analytics platform based on Apache Spark. He holds a PhD in computer science from Zhejiang University. His research interests include information retrieval and web data mining.
- 基于成本的Spark SQL优化器框架 [session]
- ORACLE数据库SQL优化--->基于成本的优化器
- CBO 基于成本的优化器!
- 基于成本的Oracle优化法则
- 基于成本的优化器 —— 一般错误概念和问题
- Oracle Optimizer:迁移到使用基于成本的优化器-----系
- Oracle Optimizer:迁移到使用基于成本的优化器-----系
- 【转】 基于成本的优化器 — 一般错误概念和问题
- 技术优化的成本
- 基于Spark DataFrame的数据仓库框架
- 13.未公开的Oracle数据库秘密笔记——10053事件和基于成本的优化器
- 孙元浩-基于Spark的SQL查询引擎
- 基于spark1.4的Spark-Sql
- 基于spark1.4的Spark-Sql
- 基于Hbase的Spark Sql示例 一
- 基于索引的sql优化
- sql语句优化与时间成本(downmoon)
- sql语句优化与时间成本
- 领英大数据平台--超过1万节点,每天15万个作业,智能连接4.7亿职场用户 [session]
- Apache Kylin 2.0:从Hadoop上的OLAP 引擎到实时数据仓库 [session]
- 牙医管家口腔管理软件DSD微笑设计3.8版本更新
- Angel:面向高维度的机器学习计算框架 [session]
- 《福布斯》杂志称Strata为“大数据运动的里程碑”
- 基于成本的Spark SQL优化器框架 [session]
- 在Apache Hadoop和Spark上加速大数据加密 [session]
- 大数据时代银行客户社交关系圈研究与应用 [session]
- 机器人的预测性维护实战:解读实时、可扩展的分析管道 [session]
- 为大数据带来交互式的BI
- 使用大数据推动东南亚前行 [session]
- Apache Hadoop 3.0的特性和开发进展的更新 [session]
- 使用R和Apache Spark处理大规模数据 [session]
- 仿网易云音乐播放音乐转盘