2024 年 08 月 02 日,Amoro 0.7.0 第一个孵化器版本正式更新发布!这个版本在 0.6.1 版本的基础上,添加了诸多新特性,并优化修复了一些现有问题,推荐正在使用任何低版本的用户升级到这个版本。在这次版本更新中,来自社区的 32 位贡献者付出了 405 次提交,感谢每位社区小伙伴的贡献!同时感谢来自腾讯云的周劲松老师作为版本 Release Manager 完成首次大量发版合规性工作,也感谢所有帮助社区审核版本、贡献代码的同学。
重要更新
1.支持管理表的 Tag 和 Branch
Tag 和 Branch 是 Iceberg 等新型数据湖表格式带来的新特性,Tag 可以帮助用户记录需要长期保留的快照,并在需要时读取里面的内容,Branch 允许在表上添加一些待验证的更新,并在经过验证后合入主分支中。0.7.0版本中 Amoro 支持了对 Iceberg 和 Paimon 表的Tag 及 Branch 的管理。
2.支持展示优化任务的详细信息
0.7.0 版本中添加了对数据优化任务更详细信息的展示,我们不仅能看到数据优化任务的各项 metric 信息,更能进一步查看到所有子任务的详细信息。该特性旨在帮助用户更容易排查一些数据优化任务的性能问题。
3.支持基于 Spark 的 Optimizer
在 Standalone optimizer 与 Flink optimizer 之外,0.7.0 版本增加了 Spark optimizer,支持用户将数据优化任务运行在 Spark 任务中,并利用 Spark 的 Dynamic Resource Allocation(DRA) 技术实现数据优化任务的资源自动伸缩。
4.支持在一个 Catalog 下管理多种 Format 的表
0.7.0 版本中允许在一个 Catalog 下创建 Iceberg, Paimon, Mixed-Iceberg 等多种格式的湖仓表,方便了对多格式使用用户的管理。
5.支持基于 Promethous 的 metric 采集
数据优化任务的运行情况将直接影响湖仓表的查询性能,0.7.0 版本增加了 metric 机制允许将表上的优化情况指标推到外部系统中,以实现监控,报警等功能。0.7.0 版本实现了 Promethous metric reporter,允许用户通过配置方便得将这些监控指标推到 Promethous 中。
6.其他改进
Major optimizing 将数据文件合并到目标大小。 将数据库用户名和密码放入 Kubernetes Secrets 中管理。 表详情中展示表优化状态。 文件页面支持按分区名称过滤,按字典值排序。 Dashboard 支持登出操作。 支持在一个优化器组中进行并行规划。 支持在配置文件中配置iceberg.worker.num-threads。 显示Iceberg Table 的格式版本。 添加使用Flink SQL 设置/更改混合格式表属性的支持。 Helm 支持配置 Kyuubi terminal 和 PostgreSQL 作为元数据库。 上传 Hadoop 配置文件时进行格式检查。 优化表格导航栏中表格搜索的速度。 使用 CachingCatalog 减少 Iceberg 表加载耗时。 展示更多 Optimizer 信息。 版本信息添加 commit id 信息。 AMS 默认使用 G1 GC。 支持为不同 Catalog 使用不同的简单授权用户名。 将管理员用户名和密码移至 Kubernetes secrets。 添加 Helm Chart 模板测试。 Paimon catalog 支持 S3 存储。 支持将 Dashboard 语言更改为中文。
6.其他问题修复
关闭自优化后,表状态没有更新为空闲。
优化提交失败:org.apache.iceberg.exceptions.ValidationException:缺少要删除的所需文件。
定期快照到期任务将被重复执行。
当分区值为空时不会触发优化。
当历史数据过期时,不应使用 amoro 生成的最新快照。
删除过期快照的过程因异常而中断。
删除分区字段后无法删除孤立文件。
无法查看快照详细信息。
无法支持表名长度超过128个字符的 Hive 表。
优化任务在几次失败后停滞。
缺乏数据库类型强制检查,导致现有 MySQL 配置检查中出现 NPE。
Release Note
Amoro 0.7.0 版本的完整 Release Note 请参考:
https://github.com/apache/amoro/releases/tag/v0.7.0-incubating
致谢
Apache Amoro 社区的发展离不开大量用户的积极使用和反馈,以及社区开发者的无私奉献,再次感谢大家的付出!也欢迎更多小伙伴共同参与到 Amoro 社区的建设中!
0.7.0版本贡献者(排名不分先后)
社区动态
目前社区正在准备0.8社区版本内容,有想法同学可以及时关注社区动态以及后续发布规划,同时社区也后续推出一系列数据湖相关的一些案例准备分享给到各位,下个版本社区会议将在晚些时候公布,敬请关注