Also, SQLite supports virtual tables that can be backed by Content Range requests; https://www.sqlite.org/vtab.html
sqlite-wasm-http, sql.js-httpvfs; HTTP VFS: https://www.npmjs.com/package/sqlite-wasm-http
sqlite-parquet-vtable: https://github.com/cldellow/sqlite-parquet-vtable
Could there be a sqlite-netcdf-vtable or a sqlite-gribs-vtable, or is the dimensionality too much for SQLite?
From https://news.ycombinator.com/item?id=31824578 :
> It looks like e.g. sqlite-parquet-vtable implements shadow tables to memoize row group filters. How does JOIN performance vary amongst sqlite virtual table implementations?
https://news.ycombinator.com/item?id=42264274
SpatialLite does geo vector search with SQLite.
datasette can JOIN across multiple SQLite databases.
Perhaps datasette and datasette-lite could support xarray and thus NetCDF-style multidimensional arrays in WASM in the browser with HTTP Content Range requests to fetch and cache just the data requested
"The NetCDF header": https://climateestimate.net/content/netcdfs-and-basic-coding... :
> The header can also be used to verify the order of dimensions that a variable is saved in (which you will have to know to use, unless you’re using a tool like xarray that lets you refer to dimensions by name) - for a 3-dimensional variable, `lon,lat,time` is common, but some files will have the `time` variable first.
"Loading a subset of a NetCDF file": https://climateestimate.net/content/netcdfs-and-basic-coding...
From https://news.ycombinator.com/item?id=42260094 :
> xeus-sqlite-kernel > "Loading SQLite databases from a remote URL" https://github.com/jupyterlite/xeus-sqlite-kernel/issues/6#i...
%FETCH <url> <filename>