automatic_Hudi Cleaning操作说明
创始人
2024-10-15 13:07:44

Automatic Hudi Cleaning操作说明

automatic_Hudi Cleaning操作说明(图片来源网络,侵删)

自动Hudi清理是Apache Hudi的一个功能,用于自动删除旧的、不再需要的数据集版本,这种清理基于配置的策略,可以定期或在数据写入时执行。

1. 配置Hudi清理策略

要配置Hudi清理策略,您需要在Hudi表的Spark SQL创建语句中指定HudiTableSink选项,以下是一个示例:

 CREATE TABLE hudi_table (   ... ) USING org.apache.hudi.spark.HoodieSparkSqlQueryableDataSource OPTIONS (   'hoodie.data.publisher'='org.apache.hudi.spark.datasource.write.DataWriterFactory',   'hoodie.cleaner.commits.retained.time'='1d',   'hoodie.cleaner.min.commits'='5',   'hoodie.cleaner.enable'='true',   'hoodie.cleaner.schedule'='10 mins',   'hoodie.cleaner.policy'='COMPACTION' ); 

在这个例子中,我们配置了以下策略:

hoodie.cleaner.commits.retained.time: 保留最近1天的所有提交(即不会删除这些提交)。

hoodie.cleaner.min.commits: 至少保留5个提交,即使它们的时间戳比hoodie.cleaner.commits.retained.time更老。

hoodie.cleaner.enable: 启用自动清理。

hoodie.cleaner.schedule: 每10分钟进行一次清理。

hoodie.cleaner.policy: 使用COMPACTION策略进行清理。

2. 启动Hudi清理

一旦配置了清理策略,Hudi将在后台自动执行清理任务,如果您想手动触发清理,可以使用以下命令:

 CALL system.hudi_clean('hudi_table'); 

这将立即执行清理操作,而不是等待下一个计划的清理周期。

3. 监控和调试Hudi清理

要监控和调试Hudi清理,您可以查看Hudi表的提交历史和清理历史,以下是一些有用的查询:

查看所有提交:

 SELECT * FROM hudi_table.hoodie_commits; 

查看所有清理:

 SELECT * FROM hudi_table.hoodie_cleans; 

查看当前保留的提交:

 SELECT * FROM hudi_table.hoodie_retained_commits; 

通过这些查询,您可以了解Hudi清理是否按预期工作,以及是否需要调整清理策略。

相关内容

热门资讯

出厂搭载鸿蒙6,华为Pura ... 【ZOL中关村在线原创技术解析】12月22日,华为官宣Pura 80系列将在出厂时直接预装全新的鸿蒙...
港股新股爆发力十足:轻松健康暗... 来源:嗨牛商业评论 历经11年深耕,这家从大健康基因起步的企业,即将登陆港交所。 暗盘交易作为港股新...
靠谱的爆屏修复品牌企业推荐:伟... 在当今数字化时代,手机已成为人们生活中不可或缺的一部分。然而,手机屏幕易碎的问题却让许多用户头疼不已...
专访地平线副总裁吕鹏:做不好端... 来源:21世纪经济报道 今年前三个季度,国内20万元以上乘用车市场份额占比30%,13万元以下市场份...
原创 套... 作者|时事热点观察者 “升套餐一键搞定,降套餐难于上青天”——这句在社交平台上流传甚广的吐槽,道出了...