Apache Impala 4.4.0正式发布了!

历时半年多,Impala 4.4终于发布了!本次更新带来了不少新功能,受限于篇幅,这里简要列举一些,后续文章再挑重点的进行介绍。

支持更多Iceberg表上的语句

支持对 Iceberg V2 表的 UPDATE 语句,用来更新已有数据。
支持 DROP PARTITION 语句删除 Iceberg 表的分区。
支持 OPTIMIZE 语句做 compaction 来清理小文件和delete文件等。
支持读取包含 equality delete 的数据。
支持用SQL语句查询 Iceberg 表的元数据(如history、snapshots等)。
支持建表时指定主键。
此外还优化了Iceberg V2表上的读性能。

历史信息查询

Impala会维护一个内部 Iceberg 表记录历史查询信息,该表由 Coordinator 自动创建,记录了每个查询的基本信息,包括从query profile中提取的信息,如内存使用量、spill-to-disk数据量等(IMPALA-12426)。

值得一提的是,Impala也维护了一个内存中的表来查询正在运行的查询信息 (IMPALA-12540)。

Event Processor增强

EventProcessor是Catalogd中的一个组件,用来从HMS拉取更新(即event)并回放到元数据缓存中。Impala 4.4对EventProcessor做了若干提升,如:

  • Event处理失败时自动Invalidate对应的表并继续处理下一个Event (IMPALA-12832)。之前的版本需要管理员执行全局 Invalidate Metadata 来恢复,代价较大。
  • 更多的性能提升,如
    • 更高效地处理不连续的同表事件(IMPALA-12463)
    • ALTER_TABLE事件尽可能不刷新文件元信息(IMPALA-12487)
    • 只拉取需要的事件类型(IMPALA-12399、IMPALA-12933)
  • 更多的bug修复,如 IMPALA-12561、IMPALA-12719等
  • 提高了EventProcessor的可见性,如展示与HMS元数据的延迟、展示当前正在处理的一批事件的信息、日志展示导致事件处理延迟的Top-10个事件等。

更丰富的查询WebUI展示

Impala 4.3开始增加了查询各个Fragment的Timeline展示,Impala 4.4在同个页面增加了资源负载(如CPU、网络、磁盘)的展示。如图
Query Timeline展示
另外/queries页面还支持导入JSON格式的profile,可以展示同样的信息。

Catalogd 和 Statestore HA

Impala的Coordinator天然就是HA的,如果有服务(impalad/catalogd/statestore)挂了,集群还能部分提供服务。Impala 4.4开始支持 Catalogd 和 Statestore 的 HA,保证有单一节点宕机时,集群能正常提供服务。

支持读取JSON格式的表

支持读取文件格式为JSON的Hive表。具体地说,JSON表也是Text格式的表,只不过 SerDe Library 设的是 org.apache.hadoop.hive.serde2.JsonSerDe。这种表也可以启用压缩,Impala都能读取。

通过JDBC读取外部数据源的数据

Impala 4.4开始支持读取 MySQL/Postgres 等提供JDBC接口的数据源,建表语句示例:

CREATE EXTERNAL TABLE alltypes_jdbc_datasource (
 id INT,
 bool_col BOOLEAN,
 tinyint_col TINYINT,
 smallint_col SMALLINT,
 int_col INT,
 bigint_col BIGINT,
 float_col FLOAT,
 double_col DOUBLE,
 date_col DATE,
 string_col STRING,
 timestamp_col TIMESTAMP)
STORED BY JDBC
TBLPROPERTIES (
"database.type"="POSTGRES",
"jdbc.url"="jdbc:postgresql://localhost:5432/functional",
"jdbc.driver"="org.postgresql.Driver",
"driver.url"="/test-warehouse/data-sources/jdbc-drivers/postgresql-jdbc.jar",
"dbcp.username"="hiveuser",
"dbcp.password"="password",
"table"="alltypes");

其它改进

内存预估改善,如考虑RuntimeFilter的影响(IMPALA-12018)、优化聚合的预估(IMPALA-11842、IMPALA-12183)等。

Query Profile提供更多信息,如DDL/DML在catalogd中执行的Timeline、Executor负载(IMPALA-12834)等。

catalogd网页展示DDL/DML运行时信息和历史信息

支持SHOW VIEWS语句

在executor中预聚合RuntimeFilter(IMPALA-3825)

支持生成DEB/RPM包

开发者名单

以下是Impala 4.4的开发者名单(按英文名首字母排序),感谢他们的贡献!
Abhishek Rawat
Andrew Sherman
Anshula Jain
Csaba Ringhofer
Daniel Becker
David Rorke
Fang-Yu Rao
Fucun Chu
Gabor Kaszab
Gaurav Singh
Gaurav Singh (gaurav1086)
Gergely Farkas
Gergely Fürnstáhl
Halim Kim (halim.kim)
Jason Fehr (jasonmfehr)
Ji Chen (jichen0919)
Joe McDonnell
Kurt Deschler
Laszlo Gaal
Lili Fu (fulili)
Maxwell Guo
Michael Smith
Noemi Pap-Takacs
Peter Rozsa
Pranav Yogi Lodha (pranavyl)
Quanlong Huang (stiga-huang)
Riddhi Jain
Riza Suminto
Sai Hemanth Gantasala
Saurabh Katiyal
Sebastian Pop
Shajini Thayasingh
Surya Hebbar
Tamas Mate
Venu Reddy
Wenzhe Zhou (wzhou-code)
Xiang Yang
Yida Wu
Yifan Zhang (zhangyifan27)
Zhi Tang (ttttttz)
Zihao Ye (Eyizoha)
Zinway Liu
Zoltan Borok-Nagy

  • 11
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Apache Atlas 是一个开源的数据治理和元数据管理框架,可以帮助用户对数据资产进行分类、发现、定义和管理。而Impala则是一个高性能、面向数据仓库的分布式SQL查询引擎。 Apache Atlas 与 Impala 可以进行整合,以实现更好的数据治理和元数据管理。具体来说,整合的好处主要有以下几点: 1. 元数据管理:Apache Atlas 可以通过其丰富的元数据模型来管理 Impala 的数据资产。它可以自动捕获和存储 Impala 表、列、分区、统计信息等重要的元数据信息,从而帮助用户了解和探索数据资产。 2. 数据分类:Apache Atlas 可以帮助用户对 Impala 中的数据进行分类和标记。通过定义和应用标签、分类和属性,用户可以更好地理解和管理 Impala 中的数据。例如,可以使用 Atlas 标记某个表包含敏感信息,从而在后续的数据治理策略中进行限制。 3. 数据发现和探索:借助于 Apache Atlas 的数据发现功能,用户可以快速和准确地搜索和定位 Impala 中的数据集,以满足数据需求。此外,Atlas 还可以提供多种可视化工具,帮助用户理解 Impala 数据的依赖关系和血缘关系,进而更好地进行数据分析和处理。 4. 安全和合规性:通过整合 Apache Atlas 和 Impala,用户可以建立和实施更严格的数据安全和合规性策略。Atlas 可以跟踪和记录数据资产的访问、变更历史以及与 Impala 相关的安全事件,以帮助用户监控和控制数据资产的使用和访问权限。 综上所述,Apache Atlas 可以与 Impala 进行整合,提供更强大的数据治理和元数据管理功能。通过联合使用这两个工具,用户可以更好地理解和管理 Impala 中的数据资产,以实现更高效、安全和合规性的数据处理。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值