{"repo":"tlinhart/duckdb-elasticsearch","free":true,"listed":false,"github":"https://github.com/tlinhart/duckdb-elasticsearch","clone":"git clone https://github.com/tlinhart/duckdb-elasticsearch.git","description":"Query Elasticsearch data directly from DuckDB","language":"C++","stars":22,"topics":["duckdb","duckdb-extension","elasticsearch"],"license":"MIT","category":"databases-storage","readme_excerpt":"DuckDB Elasticsearch Extension A DuckDB extension that enables querying Elasticsearch indices directly using SQL. Bring the power of SQL analytics to your Elasticsearch data without ETL pipelines or data movement. Overview This extension provides a table function that allows you to: - Query Elasticsearch indices using familiar SQL syntax. - Leverage DuckDB's query optimizer with filter, projection and limit pushdown. - Join Elasticsearch data with local tables, Parquet files or other data sources. The extension automatically infers the schema from Elasticsearch index mappings, handles type conversions and supports advanced features like nested objects, geo types and multi-index queries. Features Query optimization - Filter pushdown – WHERE clauses are automatically translated to Elasticsearch Query DSL and executed server-side, reducing data transfer. This includes spatial predicates from the DuckDB spatial extension. - Projection pushdown – only requested columns are fetched via source filtering. - Limit pushdown – LIMIT and OFFSET clauses are pushed to Elasticsearch via an optimizer extension. Automatic schema inference - Schema is inferred from Elasticsearch index mappings at query time. - Supports multi-index queries (e.g. logs- ) with automatic mapping merging. - Array fields are detected by sampling documents. - Schema resolution results (index mappings and document sampling) are cached. - Unmapped/dynamic fields are collected into a VARIANT column. Type support - Full ","default_branch":null,"files":null,"tree":[],"storefront":"/r/tlinhart","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/tlinhart/duckdb-elasticsearch/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}