Delta Lake & Lakehouse Architecture
Focus: Transaction log, MERGE scenarios, optimization, architecture decisions Complete Delta Guide: For the full standalone Delta Lake page (32 questions), see /learn/delta
Memory Map
SECTION 1: DELTA LAKE INTERNALS
Q1: What is the Delta Lake transaction log (_delta_log)? Explain how it ensures ACID transactions.
Simple Explanation: Think of a bank ledger. Every deposit, withdrawal, and transfer is recorded in order. If someone asks "what was the balance yesterday?", you replay the ledger up to yesterday. The Delta transaction log works the same way — it records every change to your table in numbered JSON files.
Answer:
The _delta_log/ directory is an ordered record of every transaction performed on a Delta table.
Structure:
Each JSON commit file contains:
addactions: New Parquet files addedremoveactions: Files logically deleted (still physically present until VACUUM)metaData: Schema changes, table propertiesprotocol: Reader/writer versioncommitInfo: Timestamp, operation, user, metrics
How ACID is ensured:
- **Atomicit