Lê Duy Khương (Daniel)

Chuỗi: lakehouse-glossary · Phần 2

Năng suất & công cụ dev

Data versioning và time travel trong Lakehouse

Data versioning và time travel: đọc dữ liệu tại thời điểm quá khứ, debug pipeline, rollback, audit. So sánh Delta, Iceberg, Hudi.

2026-03-172 phút đọcVI


1. Khái niệm

Data Versioning là khả năng ghi nhận, quản lý và truy vết từng phiên bản của dữ liệu theo thời gian.

Time Travel cho phép đọc lại trạng thái của dữ liệu ở một thời điểm quá khứ, như một dạng "Git cho dữ liệu."


2. Mục tiêu

  • Truy xuất dữ liệu lịch sử: hỗ trợ kiểm tra, debug, audit
  • Khôi phục dữ liệu khi pipeline lỗi hoặc ghi sai
  • Phục vụ các use case cần so sánh dữ liệu theo thời gian
  • Cung cấp tính lineage ngược (backtracking)

3. Cơ chế hoạt động

Tùy thuộc định dạng (Delta Lake, Iceberg, Hudi), time travel hoạt động qua:

Cơ chếMô tả kỹ thuật
SnapshottingLưu metadata snapshot (versioned manifest)
Append-only logThêm các commit log vào metadata timeline
CheckpointĐịnh kỳ lưu checkpoint tăng tốc đọc

4. Ứng dụng thực tế (Use cases)

Use CaseMô tả
Debug pipelineSo sánh dữ liệu "trước – sau" khi pipeline lỗi
Undo ingestionRollback dữ liệu về trước khi load nhầm
So sánh kỳTruy xuất bảng "customer" tại ngày cuối Q1 và Q2
Audit logTruy lại ai thay đổi gì trong bảng khách hàng
Regression TestingTest schema/dữ liệu trên snapshot trước

5. Sample code (Delta Lake – Time Travel)

# Ghi dữ liệu
df.write.format("delta").mode("append").save("/lake/customers")
 
# Đọc phiên bản theo version
df_v1 = spark.read.format("delta").option("versionAsOf", 1).load("/lake/customers")
 
# Đọc theo timestamp
df_time = spark.read.format("delta").option("timestampAsOf", "2025-06-01T12:00:00").load("/lake/customers")

6. So sánh giữa 3 hệ thống

Tính năngDelta LakeIcebergHudi
Time TravelversionAsOf / timestampAsOfsnapshotId / timestampcommitId
VersioningACID logManifest treeTimeline log
Tích hợp SparkRất tốtTốtTốt
Metadata formatJSON logManifestAvro/Timeline

7. Sơ đồ dòng thời gian

T1 ──────┐
         ▼
        V1 (Ghi lần đầu)
         ▼
T2 ──────┐
         ▼
        V2 (Ghi thêm)
         ▼
T3 ──────┐
         ▼
        V3 (Cập nhật)

--> Truy vấn lại V1, V2, V3 bằng Time Travel
LDK

Le Duy Khuong

AI Transformation & Digital Strategy. Writing about agentic systems, engineering leadership, and building in public.