Update nexus wiki content
This commit is contained in:
43
wiki/entities/Apache-Iceberg.md
Normal file
43
wiki/entities/Apache-Iceberg.md
Normal file
@@ -0,0 +1,43 @@
|
||||
---
|
||||
title: "Apache Iceberg"
|
||||
type: entity
|
||||
tags: [data-engineering, lakehouse, open-table-format, ACID]
|
||||
sources: [engineering-data-engineer]
|
||||
last_updated: 2026-05-02
|
||||
---
|
||||
|
||||
## Overview
|
||||
|
||||
Apache Iceberg 是一个开放表格格式规范(Open Table Format),为数据湖提供 ACID 事务、隐藏分区、时间旅行和跨引擎互操作能力。Data Engineer Agent 使用 Iceberg 替代或与 Delta Lake 配合,实现跨引擎(Spark/Trino/Presto)读写同一份数据。
|
||||
|
||||
## Key Features
|
||||
|
||||
### ACID Transactions
|
||||
与 [[Delta Lake]] 类似,Iceberg 提供写操作的原子提交和并发控制。
|
||||
|
||||
### Hidden Partitioning(隐藏分区)
|
||||
- 分区策略由 Iceberg 自动管理,消费者无需感知分区键
|
||||
- 支持身份分区(identity)、桶分区(bucket)、日期/时间分区等
|
||||
- 避免用户误操作分区列导致数据倾斜
|
||||
|
||||
### Time Travel & Rollback
|
||||
- 通过 snapshot ID 或 timestamp 查询历史数据
|
||||
- 支持 rollback 到任意历史 snapshot
|
||||
|
||||
###跨引擎互操作
|
||||
- Spark、Trino、Presto、Flink、Hive 均可读写同一 Iceberg 表
|
||||
- 企业级数据湖多引擎共享数据的标准方案
|
||||
|
||||
## Iceberg vs. Delta Lake
|
||||
|
||||
| 特性 | Apache Iceberg | Delta Lake |
|
||||
|------|---------------|------------|
|
||||
| 起源 | Netflix/Apple 开源 | Databricks 开源 |
|
||||
| 跨引擎 | ✅ 原生多引擎 | ⚠️ 主要 Spark/Databricks |
|
||||
| 隐藏分区 | ✅ | ❌ |
|
||||
| 增量读取 | ✅ | ✅ |
|
||||
| 生态 | Trino/Presto/Flink 广泛支持 | Spark/Databricks 深度集成 |
|
||||
|
||||
## Related Concepts
|
||||
- [[Delta Lake]](Iceberg 的主要替代方案)
|
||||
- [[Medallion Architecture]](Iceberg 作为 Bronze/Silver/Gold 存储格式)
|
||||
Reference in New Issue
Block a user