Posts
All the articles I've posted.
- 31 MIN READ•Oct 21, 2026
Your Data Agents Are CPU-Bound, and the Hardware Market Just Noticed
Analytics agents spend most of their time on CPU-bound tool calls, not the model. Size three planes separately and measure your ratio from traces.
agentic analyticsAI agentslakehouse - 31 MIN READ•Oct 21, 2026
Iceberg Is Getting a Vector Type, and Parquet Decides What It Looks Like
Iceberg's proposed vector type enforces fixed dimension, non-null, and finite values. What it promises, how Parquet shapes it, and what to do now.
Apache Icebergvector typeembeddings - 31 MIN READ•Oct 21, 2026
What Vortex Has to Prove Before Iceberg Adds a Fourth File Format
The Vortex proposal split into criteria and candidate. What field IDs, statistics, governance, and ecosystem support a new Iceberg file format must prove.
Apache IcebergVortexParquet - 31 MIN READ•Oct 21, 2026
How to Choose Between Partitioning, Sort Orders, and Z-Order in Apache Iceberg
Partitioning, sort orders, and Z-order each cluster Iceberg data differently. Compare the costs, the failure modes, and how to measure layout with data_files.
Apache IcebergpartitioningZ-order - 31 MIN READ•Oct 21, 2026
Choosing Self-Hosted Object Storage for the Lakehouse After MinIO
MinIO's community edition is archived. Compare RustFS, SeaweedFS, Ceph, and Garage against what Iceberg actually needs, then test and migrate.
object storageMinIORustFS - 9 MIN READ•Oct 21, 2024
Parquet Metadata Explained: Footer, Row Groups, Statistics
Parquet metadata lives in the file footer: the schema, row group layout and per-column min/max statistics that let query engines skip data they do not need.
data lakehousedata engineeringapache parquet - 7 MIN READ•Oct 21, 2024
Read and Write Parquet Files in Python (PyArrow, Pandas)
How to read and write Parquet files in Python with PyArrow, FastParquet, and Pandas, including column selection, compression, and partitioned datasets.
data lakehousedata engineeringapache parquet - 9 MIN READ•Oct 21, 2024
Parquet Performance Tuning: 8 Best Practices
Tune Apache Parquet for speed and cost: row group and file sizes, partitioning, Snappy vs ZSTD compression, encodings, sorting, and predicate pushdown.
data lakehousedata engineeringapache parquet - 43 MIN READ•Sep 23, 2025
Data Lakehouse Guide 2026: Architecture and Ecosystem
What a data lakehouse is and how it works: Iceberg, Delta, Hudi, and Paimon table formats, the five core layers, catalogs, ingestion, and optimization.
Data LakehouseData EngineeringAgentic AI - 23 MIN READ•Sep 24, 2025
Open Table Formats Compared: Iceberg, Delta, Hudi, Paimon
Apache Iceberg, Delta Lake, Hudi, Paimon and DuckLake compared: metadata design, row-level updates, engine support, and when to choose each table format.
Data LakehouseData EngineeringAgentic AI - 9 MIN READ•Jan 10, 2026
Recursive Language Models (RLMs): How They Work
Recursive Language Models keep a long prompt in a Python REPL and let the model call itself on pieces of it, handling inputs 100x beyond its context window.
artificial intelligencelanguage modelsmachine learning - 5 MIN READ•Feb 18, 2026
Idempotent Data Pipelines: Patterns, SQL, and Pitfalls
An idempotent pipeline gives the same result no matter how often it runs. Use partition overwrite, MERGE upserts, and dedup to make retries and backfills safe.
data engineeringbest practicesidempotency