首页/数据/数仓建模速查/Delta Lake:事务日志与表特性
湖仓与引擎63 条

Delta Lake:事务日志与表特性

Delta Lake 用 _delta_log 事务日志记录每次提交,提供 ACID、时间旅行与模式强制;与 Spark 生态集成紧密,适合以 Spark 为主的湖仓链路。

数仓建模速查数据更新于 2026-10-12
核心_delta_log 日志
能力ACID/时光旅行
模式写入强约束
生态Spark 为主

Delta 操作

Delta 操作
CREATE TABLE demo.db.trade_order (
  order_id STRING,
  pay_amt DECIMAL(18,2),
  dt DATE
) USING delta PARTITIONED BY (dt);

MERGE INTO demo.db.trade_order t
USING stg_order s ON t.order_id = s.order_id
WHEN MATCHED THEN UPDATE SET t.pay_amt = s.pay_amt
WHEN NOT MATCHED THEN INSERT *;
模式强制会拒绝不匹配写入,导入脏数据时需要显式开启合并模式(代价是类型放宽)。

易错点

  • 为图省事按字符串写入,类型约束失效造成脏数据

数据来源与参考

  • Delta Lake 官方文档:Welcome
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌