[Feature Request] Add Native ClickHouse Datasource Integration
Currently, Budibase does not have a native connector for ClickHouse, which is one of the world's most popular open-source column-oriented database management systems for Online Analytical Processing (OLAP).
Although ClickHouse exposure over a MySQL-compatible port exists, trying to run ClickHouse via Budibase's current generic MySQL connector does not work. Critical dialect mismatches, differences in system catalog inspection (e.g. DESCRIBE vs schema queries), and driver incompatibilities block successful execution out-of-the-box.
Relying on MySQL emulation also fails to support ClickHouse-specific high-performance features, custom analytical data types, and native client optimizations.
I would like to contribute a brand-new, native ClickHouse Datasource integration built from the ground up using the official @clickhouse/client library over HTTP.
Rather than writing a massive amount of redundant code, the most elegant and simple approach is to adapt the existing SQL/MySQL framework inside Budibase. By inheriting from Budibase's core SQL class (extends Sql with super(SqlClient.MY_SQL)), we can leverage Budibase's highly mature query translation and Knex raw helpers, whilst executing the queries natively through the ClickHouse HTTP client.
This keeps the implementation extremely lightweight, clean, and perfectly aligned with Budibase's architectural patterns.
Hoping that this proposal will be welcomed and approved by the team, I remain at your complete disposal to be assigned this issue and submit the prepared Pull Request.
Regards, Matteo
Source: Budibase/budibase