Apache Iceberg 数据湖表格式中的核心术语

  1. Data Files (数据文件)
    定义:这是 Iceberg 表中实际存储业务数据的文件。
    位置:通常位于表的数据存储目录下的 data目录中。
    格式:常见的格式是 Parquet(以 .parquet结尾),例如图片中的例子 00000-0-root_..._0025-00001.parquet。
    特性:每次对表进行更新(如插入、删除、修改)操作,都会产生新的数据文件。
  2. Snapshot (表快照)
    定义:快照代表了表在某个特定时刻的完整状态。
    内容:每个快照包含一个清单列表(Manifest List),这个清单列出了当时表所包含的所有数据文件(Data Files)。
    作用:就像是数据库在某个时间点的备份视图,查询引擎可以通过快照确定要读取哪些数据文件。
  3. Manifest List (清单列表)
    定义:这是一个元数据文件,它列出了构建当前快照(Snapshot)所需的所有清单文件(Manifest File)。
    存储内容:
    每个 Manifest File 的路径。
    每个 Manifest File 存储的数据文件的分区范围。
    增加或删除了多少个数据文件等信息。
    作用:在查询时,它可以帮助快速过滤掉不需要扫描的文件,从而加速查询。
  4. Manifest File (清单文件)
    定义:这也是一个元数据文件,它列出了组成快照(Snapshot)的具体数据文件(Data Files)的详细信息。
    存储内容(每行描述一个数据文件):
    数据文件的状态(新增、删除等)。
    文件路径。
    分区信息。
    列级别的统计信息(如每列的最大值、最小值、空值数等)------这是 Iceberg 高效剪枝(Pruning)的关键。
    文件大小和行数。
    格式:通常以 Avro 格式存储(以 .avro结尾),例如图片中的例子 8138fce4-40f7-41d7-82a5-922274d2abba-m0.avro。
    作用:查询引擎在扫描表时,会利用这里的列统计信息跳过不相关的数据文件(例如,查询条件要求年龄>30,而某文件统计显示年龄最大值25,则该文件可直接跳过)。
    总结关系链
    这四个术语构成了一个自下而上的层级结构,用于管理表的版本和数据:
    Data Files (数据文件) →被记录在 Manifest File (清单文件) 中 →多个 Manifest File 被记录在 Manifest List (清单列表) 中 →最终构成 Snapshot (表快照)。
相关推荐
龙亘川4 小时前
构建城市公共安全数字底座:亘川智城智慧安防系统全维度解读
java·大数据·开发语言·人工智能·信息可视化
BJ_Bonree4 小时前
博睿数据亮相第41届BFSI IT Summit Thailand
大数据·人工智能·物联网
好焊孙辉4 小时前
六成份额之后:鸿栢科技扩大产业规模的几点思考
大数据·人工智能·科技
跨境小彭5 小时前
Temu 全托管模式下,SKU 利润核算的实践复盘
大数据·运维·人工智能·自动化·temu
数智园区合作社5 小时前
问数平台怎么把同一个指标锁成一个数
大数据·数据库·人工智能·ai
2601_970703836 小时前
工业除湿机租赁:把一份租金合同拆开看
大数据·数据结构·算法·数据库架构·推荐算法
心疼你的一切7 小时前
Python自动发邮件实战定时发报表
大数据·开发语言·python
王中阳Go8 小时前
5.27 分钟干完后端和全部测试:一场三小时笔试的五个失分点,四个不在代码上
大数据·数据库·人工智能·后端·大语言模型
演艺大赏8 小时前
Paimon 1.3.1 报 Proxy user is not supported:Kyuubi + Kerberos 集成排查与源码级定位
大数据