Iceberg 是一种用于海量分析表的高性能格式。Iceberg 将 SQL 表的可靠性和简洁性引入大数据领域,同时使 Spark、Trino、Flink、Presto、Hive 和 Impala 等引擎能够同时安全地处理相同的表。
Iceberg 支持灵活的 SQL 命令来合并新数据、更新现有行并执行有针对性的删除操作。Iceberg 可以为了读取性能主动重写数据文件,也可以使用删除增量(delete deltas)来实现更快的更新。
模式演进开箱即用。添加列不会导致“僵尸”数据复现。列可以重命名和重新排序。最重要的是,模式更改从不需要重写您的表。
Iceberg 处理了为表中行生成分区值这一繁琐且易出错的任务,并自动跳过不必要的分区和文件。快速查询无需额外的过滤器,并且可以随着数据或查询的变化更新表布局。
时间旅行支持使用完全相同的表快照进行可重复查询,或让用户轻松检查更改。版本回滚允许用户通过将表重置为良好状态来快速纠正问题。
开箱即用支持数据压缩,您可以选择不同的重写策略(如 bin-packing 或排序)来优化文件布局和大小。