{"repo":"EvgeniyPatlan/ducksdb-mysql-engine","free":true,"listed":false,"github":"https://github.com/EvgeniyPatlan/ducksdb-mysql-engine","clone":"git clone https://github.com/EvgeniyPatlan/ducksdb-mysql-engine.git","description":"In-tree DuckDB storage engine for MySQL 9.7: ENGINE=DuckDB with automatic whole-query pushdown — all 22 TPC-H queries push down, results identical to InnoDB, on par with MariaDB's ENGINE=DuckDB at SF10.","language":"C++","stars":13,"topics":["analytics","duckdb","mysql","olap","storage-engine","tpch","query-pushdown"],"license":"GPL-2.0","category":"databases-storage","readme_excerpt":"ducksdb-mysql-engine An in-tree DuckDB storage engine for MySQL 9.7 . Create a table with ENGINE=DuckDB and analytical queries against it execute inside DuckDB's columnar/vectorized engine automatically — no SECONDARY ENGINE= / SECONDARY LOAD ceremony. One server, one SQL interface. The engine is built into mysqld as a MANDATORY storage engine and registers a small server hook ( handlerton::pushdown select , added by the patches in server-patches/ ) that lets it take over execution of a whole SELECT whose base tables are all ENGINE=DuckDB : the query is regenerated in DuckDB's dialect, run in DuckDB, and the result streamed back. Anything it can't translate declines transparently and falls back to normal MySQL execution. The pushdown covers aggregates, inner/outer joins, derived tables, CTEs, scalar subqueries, and IN / EXISTS / NOT IN / NOT EXISTS predicates — all 22 TPC-H queries push down and return results identical to InnoDB. On SF10 the engine is on par with MariaDB's ENGINE=DuckDB (see docs/tpch sf10 mariadb comparison.md). Run with Docker A prebuilt image ships MySQL 9.7 with the engine already built in: See docs/installation.md for configuration and persistence, and docs/usage.md for the full query guide. Layout - engine/ — the handler ( ha duckdb ) and the whole-query pushdown ( duckdb pushdown ). - common/ — the shared storage/type/DML/transaction/util layer. - server-patches/ — the MySQL server patches the engine depends on (applied into the build tree by scripts/","default_branch":null,"files":null,"tree":[],"storefront":"/r/EvgeniyPatlan","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/EvgeniyPatlan/ducksdb-mysql-engine/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."}