Blog

Writing on SQL for Elasticsearch — schema management, queries, cross-index JOIN, materialized views, and the drivers that carry them. Each post is maintained: when the product moves, the post is corrected.

Latest

Ten Million Rows Out of Elasticsearch, Parsed Once

Where the time goes when you pull ten million rows out of Elasticsearch, and what parsing each response exactly once buys you.

August 31, 2026 · 16 min read

Cross-Cluster JOIN · Part 4

Three Ways Teams Are Putting Cross-Cluster JOIN to Work

Three usage shapes for cross-cluster JOIN, mapped to the deployment patterns and tiers behind them.

August 27, 2026 · 6 min read

Cross-Cluster JOIN · Part 3

It's 2 AM, the Outage Spans Three Regions, and You Have Eleven Kibana Tabs

Correlating logs, metrics and traces across three regional clusters in one SQL query instead of eleven Kibana tabs.

August 13, 2026 · 7 min read

Cross-Cluster JOIN · Part 2

The JOIN Matrix: How Cross-Index JOIN Actually Works on Elasticsearch

The three rows of the JOIN ladder — passthrough, cross-cluster conveyor, multi-source coordinator — with worked SQL.

August 6, 2026 · 7 min read

Cross-Cluster JOIN · Part 1

Stop ETL'ing Elasticsearch Into Your Warehouse Just to JOIN It

Query-time cross-index and cross-cluster JOIN on Elasticsearch, on every surface you already use.

August 4, 2026 · 8 min read

SQL for Elasticsearch · Part 7

JOINs in Elasticsearch? One SQL Statement. Zero Application Code.

SQL-defined materialized views: one CREATE statement in place of a denormalization pipeline.

March 24, 2026 · 4 min read

SQL for Elasticsearch · Part 6

Connect DBeaver to Elasticsearch. Yes, Really.

A JDBC Type 4 driver that lets DBeaver, DataGrip and Superset query Elasticsearch as if it were a database.

March 17, 2026 · 5 min read

SQL for Elasticsearch · Part 5

A 47-Line curl Script to Insert One Document. Seriously.

INSERT, UPDATE, DELETE and COPY INTO on Elasticsearch — the DML half of SQL, without the curl ceremony.

March 10, 2026 · 4 min read

SQL for Elasticsearch · Part 4

Elasticsearch Schema Management Was Hell. Then Someone Typed SQL.

CREATE TABLE, ALTER TABLE and zero-downtime migrations on Elasticsearch, expressed as SQL DDL.

March 3, 2026 · 5 min read

SQL for Elasticsearch · Part 3

It's 3 AM. Production Is Down. Your Only Tool Is curl.

An interactive SQL terminal for Elasticsearch — history, completion and readable output when you are on call.

February 23, 2026 · 7 min read

SQL for Elasticsearch · Part 2

Elasticsearch Queries That Never Break in Production

Compile-time validation for Elasticsearch queries: catch the field-name typo at build time, not at 2 AM.

December 4, 2025 · 17 min read

SQL for Elasticsearch · Part 1

Stop Rewriting Your Elasticsearch Code Every Version Upgrade

One client API across Elasticsearch 6, 7, 8 and 9 — so a major-version upgrade stops meaning a rewrite.

November 18, 2025 · 8 min read