Skip to content

SQL Guide ​

Beacon uses Apache DataFusion as its query engine. It gives you a broad standard SQL dialect with SELECT, WHERE, GROUP BY, JOIN, ORDER BY, window functions and more. Every transport below speaks the same dialect.

Run SQL ​

InterfaceHow
HTTP API (server)POST /api/query with { "sql": "..." }. The SQL interface is on by default.
Arrow Flight SQL (server)Any Flight SQL client, such as DataGrip, ADBC or DBeaver. It is on by default.

What you can query ​

Registered tables: any external table or view:

sql
SELECT * FROM ocean_profiles LIMIT 100

Files on demand: use a table function. You register no table:

sql
SELECT * FROM read_netcdf(['argo/**/*.nc']) LIMIT 100

Reference ​

Friendly SQL. Beacon also supports these DataFusion extensions: SELECT * EXCLUDE (col), REPLACE (…), GROUP BY ALL, QUALIFY, UNION BY NAME, FROM first (FROM t SELECT …), DESCRIBE, SHOW TABLES, SHOW COLUMNS, list literals and trailing commas.

Released under the AGPL-3.0 License.