lakeql Runs SQL on Tigzig's 37.5 Million Row MF NAV Parquet File, Straight From the Browser

lakeql Runs SQL on Tigzig's 37.5 Million Row MF NAV Parquet File, Straight From the Browser

Published: October 8, 2026

Erik Aronesty saw my note on Tigzig's MF NAV parquet file (37.5 million rows) and offered to try his lakeql engine on it. He has built lakeql, a lightweight JavaScript SQL engine for parquet files. lakeql fills the gap for a light JS SQL engine that runs in a browser or a Worker. It reads only the parts of a file a query needs. Great for data lakes of parquet or Iceberg files.

There is no server, database, backend or API in between.

Erik's live demo on the MF NAV data shows the bytes and requests for each query.

lakeql loads under 100 KB of JavaScript. That small size means it's very efficient to run inside a Cloudflare Worker....so a small API over parquet files in R2 or S3 takes a few lines of code. At the same time, data published as parquet files can be queried with SQL straight from a browser.

What about DuckDB-WASM?

That was the only way I knew so far, powerful but a much heavier load. Erik has a live tool on the site for lakeql vs DuckDB-WASM (browser to R2) .. running moving averages, ranks and interval ranges. My sense - it all depends on what you are trying to do ...

https://lakeql.com/compare.html

One important thing to keep in mind - lakeql can hit any parquet but the performance considerations are on the file side - how the parquet is sorted and grouped decides how much of each file a query has to read... impacting latencies and performance.

A few notes on the MF NAV file

A few notes on the file for anyone trying this on the MF NAV file.

lakeql running on the Tigzig MF NAV parquet file: 2.06 MB fetched from a 170 MB file


Working on something similar? How I work covers the rates, the availability and what I take on.