当前位置:首页 > 报告详情

Impala中的性能优化.pdf

上传人: 2*** 编号:135173 2023-07-09 38页 3.57MB

1、DataFunSummit2023Impala在数据湖中的性能优化黄权隆-Cloudera-Staff Software EngineerImpala与数据湖Iceberg相关优化Codegen优化未来展望DataFunSummit2023Impala与数据湖数据湖概览 SQL查询引擎,面向交互式查询场景 数据/元数据都在外部存储上,无状态 MPP架构,内存计算,C+内核 Open Storage HDFS、Ozone、Kudu、S3、ADLS、HBase等 Open File Format Parquet、ORC、Avro、Text等 Open Table Format Iceberg、Hu

2、di、Hive ACID等 企业级的Security集成 授权、鉴权、血缘、审计、脱敏等都有集成 如Kerberos、LDAP、JWT、SSL、Ranger、Atlas集成等 企业级应用广泛 1400 个客户,97000 台机器 单集群规模 500 节点Impala简介 Coordinator处理查询请求,可有多个 Parse,Analyze,Plan,Optimize 元数据缓存 准入控制/并发控制,调度 Executor 分布式执行Impala架构Query CompilerQuery CoordinatorLocal Metadata CacheQuery ExecutorHive Me

3、tastoreStorage Master NodesStateStoreFE(Java)BE(C+)HDFS/OzoneKuduS3/ADLS/GCPHBaseImpala CoordinatorImpala ExecutorsMetadata&Control ExecutionStorageRangerQuery ExecutorQuery ExecutorQuery ExecutorQuery ExecutorQuery ExecutorQuery ExecutorQuery ExecutorQuery ExecutorQuery ExecutorQuery ExecutorQuery

4、ExecutorQuery ExecutorCatalog ServerCached Table Metadata外部系统元数据/调度/集群管控执行层 所有查询都能查看,包括正在运行或失败的查询,以及DDL/DML等Impala WebUI Queries页面 图形化的query plan,开源版本即可拥有Impala WebUI Query Plan可视化Impala WebUI Query Timeline 4.3.0:计划中 4.2.0:2022-12-08 4.1.0:2022-06-01 4.0.0:2021-07-12 3.4.0:2020-04-24 3.3.0:2019-08-

5、22 3.2.0:2019-03-28(CDH6.3 版本)3.1.0:2018-12-06 3.0.1:2018-10-24 3.0.0:2018-05-07 2.12.0:2018-04-24(CDH5.16 版本)2.11.0:2017-12-28Impala 发布历史Benckmark测试建议使用新版本 对数据的假设/管控有限 数据源、数据导入方式、文件格式、表格式多样 存算分离,支持开放存储 数据湖/湖仓优化 vs.传统数仓优化 数据预排序 需要数据生产者支持 若保证有序,简单的min()/max()查询可只读首/末行,可实现直接merge-join等优化 不保证有序,只能基于文件m

6、in-max索引做谓词下推,数据有序时,min-max索引更有效 字典编码、索引等 文件级别可以有字典编码,但难以维护全局字典 难以自定义文件格式 数据位置不可控,难以做colocated优化等 数据湖查询引擎的挑战 开放性(Openness)数据湖查询引擎可做的优化 为支持开放性、存算分离等,不能对数据做过多假设,但仍有许多优化点可做:查询计划层 谓词推导/下推、常量传播、Join顺序、子查询改写等 结合执行层:Pre-aggregation、Runtime Filter、Broadcast vs Partitioned(Shuffle)执行层 JIT Codegen、向量化、SIMD、Pr

word格式文档无特别注明外均可编辑修改,预览文件经过压缩,下载原文更清晰!
三个皮匠报告文库所有资源均是客户上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作商用。
本文主要介绍了Impala在数据湖中的性能优化,以及与Iceberg相关的优化。Impala是一款面向交互式查询场景的SQL查询引擎,支持开放存储,适用于大规模数据处理。Iceberg是一种开放表格式,支持Hadoop生态系统。 关键点如下: 1. Impala的架构包括Query Compiler、Query Coordinator、Local Metadata Cache、Query Executor等组件,支持MPP架构、内存计算和C++内核。 2. Impala支持企业级特性,如Security集成、授权、鉴权、血缘、审计和脱敏等。 3. Iceberg与Impala的集成优化,包括优化Iceberg V2表的读性能,支持DELETE和UPDATE操作,以及查询Iceberg元数据。 4. Codegen是Impala的一个核心特性,通过基于LLVM的编译技术,为每个查询生成最优的执行程序。Async Codegen和Codegen Cache是Codegen的优化手段,可以提高查询性能。 5. 未来展望中,Impala将继续优化Iceberg相关功能,以及在Codegen方面的性能提升。 综上所述,Impala通过与Iceberg的集成优化以及Codegen技术的应用,提高了数据湖中的查询性能,为企业级应用提供了高效、稳定的数据处理能力。
"Impala在数据湖中的性能优化有哪些?" "Impala与Iceberg相关优化有哪些最新进展?" "Codegen技术在Impala中的应用和未来展望是什么?"
客服
商务合作
小程序
服务号
折叠