hudi系列-文件压缩(compaction)

本文介绍了Hudi的压缩(compaction)在MergeOnRead表中的作用,详细阐述了压缩的触发策略、压缩策略选择以及压缩的异步、同步和离线方式。并详细展示了异步压缩的流程,包括生成压缩计划、执行压缩、检查压缩状态等步骤。
摘要由CSDN通过智能技术生成

1. 简介

压缩(compaction)仅作用于MergeOnRead类型表,MOR表每次增量提交(deltacommit)都会生成若干个日志文件(行存储的avro文件),为了避免读放大以及减少文件数量,需要配置合适的压缩策略将增量的log file合并到base file(parquet)中。

1.1 环境

  • flink 1.13.6
  • hudi 0.11.0

1.2 触发策略

提供4种触发策略,可通过hoodie.compact.inline.trigger.strategy / compaction.trigger.strategy​进行配置:

  • NUM_COMMITS:达到N次commit时触发压缩,默认的触发策略,默认值为5次,通过hoodie.compact.inline.max.delta.commits ​/ compaction.delta_commits配置
  • TIME_ELAPSED:自上次压缩以来经过的时间 > N 秒时触发压缩,通过hoodie.compact.inline.max.delta.seconds​ / compaction.delta_seconds​配置
  • NUM_AND_TIME
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值