Apache Hudi生成的Parquet文件名各分段分别代表什么含义?
Apache Hudi Parquet 文件名分段规则说明
完整的Hudi生成Parquet文件名格式为:[File Group ID]-[File Chunk ID]_[Task Partition ID]-[Write Task ID]-[Unique Suffix]_[Instant Time].parquet
你现有理解的确认
0743209d-51cb-4233-a7cd-5bb712fba1ff:确实是 File Group ID(文件组ID),是Hudi中文件组的唯一标识,同一文件组下的所有文件共同维护同一主键范围的多版本数据。-0:是 File Chunk ID(文件块ID),当单个文件写入大小超过配置的最大文件阈值时,会拆分生成多个文件块,默认单文件未超出阈值的情况下,该值固定为0。20211117172738:是 Instant Time(提交时间戳),对应Hudi Timeline上本次写入的提交时间,标识该文件所属的写入批次。
未知分段21-64-5300的含义
该分段由三个数字拼接而成,各部分含义如下:
- 第一位
21:Task Partition ID(任务分区ID),是Spark/Flink等执行引擎中负责写出该文件的任务对应的上游数据分区编号。 - 第二位
64:Write Task ID(写入任务ID),是本次写入批次中执行写入操作的任务的唯一编号,同批次内不同写入任务的ID不会重复。 - 第三位
5300:唯一后缀/任务重试ID,不同Hudi版本实现略有差异,多数版本为任务重试的Attempt ID,部分版本为随机生成的唯一数值,核心作用是避免同一任务多次重试写入时产生重名文件冲突。
内容的提问来源于stack exchange,提问作者cauthon
相关产品推荐
相关产品推荐

