Apache Hudi特性—文件布局

下面将讨论一些关键概念和术语,这些概念和术语对于理解和有效使用这些原语非常重要。

Hudi文件布局

Apache Hudi的一般文件布局结构描述如下:

  • (1) Hudi将数据表组织到分布式文件系统的基路径(base path)下的目录结构中。
  • (2) 表被分解成分区。
  • (3) 在每个分区内,文件被组织到文件组中,由一个文件ID惟一地标识。
  • (4) 每个文件组包含几个文件片。
  • (5) 每个文件片包含在某个提交/压缩瞬态生成的一个基文件(.parquet),以及一组日志文件(.log.*),这些日志文件包含自基本文件生成以来对基文件的插入/更新。

Hudi采用Multiversion Concurrency Control(MVCC),其中压缩操作将日志和基文件合并生成新的文件片,清理操作将删除未使用的/旧的文件片,以回收文件系统上的空间。

Apache Hudi的一般文件布局结构如下图所示。


《Spark原理深入与编程实战》