Apache Iceberg 官方源代码首次编译耗时 1.5 小时

世界真的是个圈,绕来绕去最后还是回到了点。

Apache Iceberg 是一个面向数据湖(Data Lake)的大规模分析表格式(Open Table Format),最初由 Netflix 于 2017 年开发,并于 2018 年捐赠给 Apache Software Foundation,现已成为 Apache 顶级项目(Top-Level Project)。

它解决了传统 Hive 表和数据湖在大数据环境中的许多问题,例如:

  • 元数据过大
  • 查询速度慢
  • 小文件过多
  • 无法支持事务
  • 难以进行 Schema 演进
  • 无法方便地实现 Time Travel

目前 Iceberg 已成为现代 Lakehouse 架构中最流行的表格式之一。

有关大数据表的很多设计理念都来自于 Google 的一篇论文:Bigtable: A Distributed Storage System for Structured Data

这篇论文发布在 2006 年,距现在已经 20 年了,但大表格是数据分析的基础。

bigtable-osdi06.pdf (216.0 KB)

Apache Iceberg 的设计模式也是针对此类大表格进行的。

使用的是 Java ,整体编译过程第一次会耗时 1.5 个小时。

里面的依赖挺多。