您现在的位置是:首页 > 技术资料 > Apache Iceberg 介绍
推荐星级:
  • 1
  • 2
  • 3
  • 4
  • 5

Apache Iceberg 介绍

更新时间:2026-06-29 08:01:47 大小:16K 上传用户:江岚查看TA发布的资源 标签:大数据 下载积分:2分 评价赚积分 (如何评价?) 打赏 收藏 评论(0) 举报

资料介绍

什么是 Apache Iceberg

Apache Iceberg是一个开源的、面向分析型工作负载的表格格式,设计目标是解决大规模数据湖中表格管理的痛点问题,支持在异构计算引擎之上实现ACID事务、Schema演进、隐藏分区等核心能力。目前Iceberg已经成为Apache顶级项目,被大量企业用于湖仓一体架构建设中。

核心设计理念

传统数据湖基于Hive分区表管理数据,存在元数据管理分散、事务支持缺失、小文件问题严重、 Schema变更复杂等问题,Iceberg从设计层面就针对这些痛点做了重构:

1. 分离计算与存储Iceberg将数据文件存储在分布式存储(如HDFSS3OSS),元数据采用独立管理的方式,计算引擎只需要通过IcebergAPI访问元数据即可获取数据信息,不依赖特定的 metastore服务,同时也支持多引擎同时访问同一份数据。

2. 快照隔离的ACID事务Iceberg采用多版本快照机制实现读写隔离,写入操作生成新的快照,不会影响正在进行的读操作,提交成功后新查询就会读取到最新数据,支持串行化的隔离级别,能够保证数据一致性,解决了数据湖常见的脏读、数据不一致问题。

3. 对大规模数据的优化设计Iceberg将元数据分层存储,避免每次查询都扫描全量元数据,同时支持通过合并小文件、排序数据文件、清理过期快照等操作维持查询性能,适配PB级别的大规模数据场景。

核心特性

1. ACID事务与快照管理

Iceberg每一次成功的写入提交都会生成一个新的快照Snapshot),每个快照保存了当前表格所有数据文件的完整信息,读操作总是基于某一个快照进行读取,因此读写不会互相干扰,天然支持隔离。

Iceberg还支持基于快照的时间旅行查询,可以读取任意历史版本的数据,也支持回滚到指定快照,方便数据出错时快速恢复,同时可以通过过期快照清理机制自动删除无用的元数据和数据文件,节省存储空间。

2. Schema演进

Iceberg完整支持Schema的变更操作,包括增加列、删除列、修改列类型、重命名列等,Schema变更属于元数据层面的操作,不需要重写整个表格的数据,只需要修改元数据即可完成,效率远高于传统Hive表需要重写数据的Schema变更方式。同时Iceberg会为每个数据文件保留对应的Schema信息,读取时自动处理不同版本Schema的数据合并,保证兼容性。


部分文件列表

文件名 大小
Apache_Iceberg_介绍.docx 16K

全部评论(0)

暂无评论

上传资源 上传优质资源有赏金

  • 打赏
  • 30日榜单

推荐下载