Performance-optimizations-in-Apache-Impala
前几天,ApacheImpala
社区发布了性能优化的一个topics,干货慢慢,我第一次见到的完整Impala整体的侧重优化和架构设计权衡的Slide。
去年底,ApacheImpala
已经成为Apache顶级项目,我还写文章介绍过,做为企业级SQL on Hadoop解决方案,已经大规模商业应用,随着CDH的发展,家喻户晓,Hadoop生态圈的贡献不可限量,性能也很优秀,曾经很长一段时间很多朋友咨询过Impala的生产环境问题,它拥有完整的权限、审计、高性能。
- 1、SparkSQL、Hive不支持即席查询。
- 2、支持更新和删除数据。
- 3、支持横向扩展高性能OLAP分析
- 4、兼容Hadoop生态,低门槛
如上,那么可以尝试ApacheImpala,完美发挥性能,需大内存,Impalad节点128G~256G。
Outline一览,全是能讲清楚Apache Impala的好东西,可以看到Impala在分布式聚合和分布式扫描统计方面一些独特的实现,它是一个真正的分布式SQL查询引擎,完美兼容HDFS,调度查询灵活。
- Impala项目的历史原因和动机
- Impala架构设计
- 侧重于性能优化概述
- 查询计划概述
- 查询优化
- 元数据和统计信息
- Back-end
- Partitioning and sorting for Selective scans
- Code-generation using LLVM
- Streaming Aggregation
- Runtime filters
- Handling cache misses for Joins and Aggs
由于内容太多,摘录部分,精彩slide片段,获取完整内容,点击[阅读原文]。
介绍了一些核心的优化思路和代码实现,非常值得,通过实战系统研究优化成果,探索高性能Impala使用方式。