拼花的格式和性能优化机会

下载幻灯片

Parquet格式是Spark生态系统中使用最广泛的柱状存储格式之一。考虑到I/O开销很大,而且存储层是任何查询执行的入口点,理解存储格式的复杂性对于优化工作负载非常重要。

作为介绍,我们将提供围绕该格式的上下文,包括结构化数据格式的基础知识和底层物理数据存储模型替代方案(按行、列和混合)。在此背景下,我们将深入研究Parquet格式的细节:磁盘上的表示、物理数据组织(行组、列块和页)和编码方案。现在有了足够的背景知识,我们将讨论几种与格式有关的性能优化方法:字典编码、页面压缩、谓词下推(最小/最大跳过)、字典过滤和分区方案。我们将学习如何对抗“许多小文件”的邪恶,并将讨论与此和Parquet相关的开源Delta Lake格式。

这篇演讲既是对柱状存储的回顾,也是如何利用Parquet格式在Spark中使用切实的技巧和技巧来加速分析工作负载的指南。



«回来
Boudewijn Braams
关于Boudewijn Braams

Boudewijn Braams是阿姆斯特丹Databricks公司的软件工程师。他是存储和I/O团队的一员,是专注于Databricks运行时性能的团队之一。在这个团队中,他致力于Parquet健壮性、Delta缓存层和云存储连接器。在开始全职工作之前,他以实习的形式在Databricks完成了他的硕士论文。这项研究探索了早期的过滤技术,如Parquet和Databricks Runtime上下文中的谓词下推。他拥有阿姆斯特丹大学和自由大学的计算机科学联合硕士学位。