Search Shortcut cmd + k | ctrl + k

Query Open-Meteo OM arrays with selective reads and geographic coordinates

Maintainer(s): blizhan

Compatibility Matrix

This table covers all DuckDB releases that have not reached end-of-life, including LTS releases, and shows the 2 most recent patch releases of each. Older patch releases are not listed, but the extension may be available for them as well.

Platform 1.4.4 1.4.5 1.5.5 1.5.6 2.0.0
Linux AMD64
Linux ARM64
macOS AMD64
macOS ARM64
Windows AMD64
Windows ARM64
WebAssembly

Installing and Loading

INSTALL duckomo FROM community;
LOAD duckomo;

Example

LOAD duckomo;
SELECT DISTINCT function_name
FROM duckdb_functions()
WHERE function_name IN ('read_om', 'read_om_raw', 'read_om_regions', 'om_grid_info')
ORDER BY function_name;

About duckomo

DuckOMO reads Float32 arrays in Open-Meteo OM v3 files as SQL tables. It supports selective value reads, geographic coordinates, explicitly declared semantic axes, polygon regions, and nearest-point sampling. Local files need no HTTPFS dependency. HTTP(S) and S3 reads use DuckDB's official httpfs extension: INSTALL httpfs; LOAD httpfs;

DuckDB 2.0.0 compatibility and release artifacts have been verified on Linux glibc x86_64/ARM64 and macOS Intel/Apple Silicon. Separate source compatibility checks also cover DuckDB 1.5.4, 1.5.5, and 1.5.6.

This source version is a prerelease. Async remote I/O remains experimental and has not shown a consistent speedup. Experimental cross-batch prefetch is disabled by default; some first local queries exceed the project's performance target. Grid validation is limited to the documented objects and domains; it does not establish support for every OM file or grid. See https://github.com/chorust/duckomo for supported inputs and examples.

Added Functions

function_name function_type description comment examples
duckomo_last_scan_metrics table NULL NULL  
om_grid_info table NULL NULL  
read_om table NULL NULL  
read_om_raw table NULL NULL  
read_om_regions table NULL NULL  

Overloaded Functions

This extension does not add any function overloads.

Added Types

This extension does not add any types.

Added Settings

name description input_type scope aliases typed_value
duckomo_async_io Read merged remote OM ranges concurrently (DuckDB 2.0 only) BOOLEAN GLOBAL [] true
duckomo_async_max_inflight Maximum concurrent remote OM reads per worker UBIGINT GLOBAL [] 8
duckomo_async_prefetch_batches Experimental remote full-scan prefetch window (1 disables cross-batch reads) UBIGINT GLOBAL [] 1
duckomo_max_threads Maximum workers used by read_om (0 uses DuckDB's thread limit) BIGINT GLOBAL [] 0
duckomo_remote_max_request Maximum bytes of one merged remote OM read UBIGINT GLOBAL [] 65536
duckomo_remote_merge Merge nearby remote OM reads (local files ignore this) BOOLEAN GLOBAL [] true
duckomo_remote_merge_gap Maximum gap in bytes merged into one remote OM read UBIGINT GLOBAL [] 4096
duckomo_revalidate_metadata Re-read every OM variable before scanning (slower; detects metadata changes after bind) BOOLEAN GLOBAL [] false
temp_directory Set the directory to which temporary files are written. VARCHAR GLOBAL [] post.db.tmp
© 2026 DuckDB Foundation, Amsterdam NL
DuckDB Home Code of Conduct Trademark Use Blog