INFO-iceberg表设置metadata.json文件保存个数

具体说明

iceberg表metadata.json文件个数过多,导致集群小文件过多,会造成hdfs的定时block汇报导致不响应写请求,从而导致写耗时变长,影响集群性能。 INFO-iceberg表如何设置metadata.json文件保留个数 - 图1

使用示例

单个表修改
spark引擎执行,设置保存个数为100.
alter table xxxxx set tblproperties ( 'write.metadata.delete-after-commit.enabled'='true', 'write.metadata.previous-versions-max' = '100')
使用spark 执行
CALL spark_catalog.system.remove_orphan_files(table => 'xxxdb.xxxtable', dry_run=> 'true)
这个会先返回待删除的文件列表
没有问题的话直接执行
CALL spark_catalog.system.remove_orphan_files(table => 'xxxdb.xxxtable')
全部配置修改
配置参数建表后设置metadata.json文件自动删除 easyops中spark的conf_spark_defaults中设置
spark.sql.catalog.spark_catalog.table-default.write.metadata.delete-after-commit.enabled=true
并且同步配置。
kyyubi同样新增参数并且同步配置重启,后自己创建一个iceberg表看看这个属性有没有打进去

作者:楚展航