Data Lakehouse Concepts Cheat Sheet
Understand lakehouse architecture combining data lake storage with warehouse guarantees via Delta Lake, Iceberg, and Hudi table formats.
2 PagesIntermediateFeb 5, 2026
Write and Version Data with Delta Lake
Write a DataFrame as a Delta table and inspect its transaction history.
python
from delta import DeltaTabledf.write.format("delta").mode("overwrite").save("/lake/orders")# time travel to a previous versionhistory_df = spark.read.format("delta").option("versionAsOf", 3).load("/lake/orders")dt = DeltaTable.forPath(spark, "/lake/orders")dt.history().show(truncate=False)
Upsert with MERGE INTO
Apply CDC-style updates and inserts atomically using Delta's MERGE operation.
sql
MERGE INTO lake.orders AS targetUSING staging.orders_cdc AS sourceON target.order_id = source.order_idWHEN MATCHED THEN UPDATE SET target.status = source.status, target.updated_at = source.updated_atWHEN NOT MATCHED THEN INSERT (order_id, status, updated_at) VALUES (source.order_id, source.status, source.updated_at);
Create an Iceberg Table
Define a partitioned Iceberg table queryable from multiple engines (Spark, Trino, Flink).
sql
CREATE TABLE catalog.sales.transactions ( txn_id BIGINT, amount DECIMAL(10,2), event_ts TIMESTAMP)USING icebergPARTITIONED BY (days(event_ts));-- schema evolution without rewriting dataALTER TABLE catalog.sales.transactions ADD COLUMN currency STRING;
Open Table Format Comparison
Key differentiators between the three dominant lakehouse table formats.
- Delta Lake- deepest Spark/Databricks integration, ACID via transaction log
- Apache Iceberg- strongest multi-engine support (Trino, Flink, Spark) and hidden partitioning
- Apache Hudi- optimized for frequent upserts/incremental ingestion pipelines
- ACID transactions- atomic commits so readers never see partial writes
- Time travel- query a table as of a prior version or timestamp
- Schema evolution- add/rename/drop columns without rewriting historical files
Pro Tip
Pick a table format based on which query engines your organization actually runs — Iceberg's multi-engine portability matters far more than benchmark differences once you have Trino, Spark, and Flink all reading the same tables.
Was this cheat sheet helpful?
Explore Topics
#DataLakehouseConcepts#DataLakehouseConceptsCheatSheet#DataScience#Intermediate#Write#Version#Data#Delta#MachineLearning#CheatSheet#SkillVeris
Advertisement
Sri Hayavadhana Info-Tech
Professional Web Designing Services
- Responsive Websites
- E-commerce Solutions
- SEO Friendly Design
- Fast & Secure
- Support & Maintenance