Awesome ClickHouseData Transfer and Synchronization

ClickHouse/clickhouse-jdbc-bridge

⭐ 176 Java repository created 2018-09-24

The ClickHouse JDBC Bridge is an experimental and no longer supported JDBC proxy designed to facilitate communication between ClickHouse and external databases. It acts as a stateless proxy that forwards queries from ClickHouse to various external data sources, enabling distributed queries across multiple data sources in real time. This capability simplifies the construction of data pipelines for data warehousing, monitoring, and data integrity checks. The project supports querying external databases using the JDBC table function in ClickHouse, allowing users to run SQL queries on external data sources as if they were native ClickHouse tables. The bridge supports multiple deployment methods including Docker Compose, Docker CLI, Debian/RPM packages, and Java CLI, making it flexible for different environments. However, it has several limitations such as lack of support for complex data types like Array and Tuple (which are treated as strings), no pushdown support which may cause queries to execute twice, and incomplete support for mutations (only simple insertions are supported). The scripting feature is also experimental. Users can define data sources and schemas to optimize query execution and avoid redundant query runs. The bridge caches metadata for up to five minutes to improve performance. The project includes detailed instructions for quick start and usage, including examples of querying data sources, defining inline and named schemas, and executing ad hoc and table queries. Despite its experimental status and potential reliability and security issues, the ClickHouse JDBC Bridge provides a useful tool for integrating ClickHouse with other databases, enabling real-time distributed querying and simplifying complex data workflows.

https://github.com/ClickHouse/clickhouse-jdbc-bridge

clickhouseclickhouse-jdbc-bridgecomplex-data-typesdata-integritydata-pipelinesdata-warehousingdebiandistributed-querydockerexperimentalexternal-databaseexternal-databasesjava-clijdbclimitationsmonitoringproxyquery-cachingrpm

Also in Data Transfer and Synchronization

jitsucom/jitsu

Jitsu is an open-source, self-hosted data ingestion platform that enables real-time event data collection and streaming to data warehouses, including ClickHouse, as an alternative to Segment.

getdozer/dozer

Dozer is a high-performance real-time data movement tool leveraging CDC to transfer and transform data efficiently into multiple sinks including Clickhouse.

zeromicro/cds

Zeromicro/cds is a Go-based tool for real-time data synchronization from MySQL and MongoDB to ClickHouse, supporting both full and incremental sync with a user-friendly web interface.

apecloud/ape-dts

Ape Data Transfer Suite (ape-dts) is a high-performance, lightweight data migration and replication tool supporting ultra-fast transfers between MySQL, PostgreSQL, Redis, MongoDB, Kafka, and ClickHouse, ideal for disaster recovery and migration scenarios.

housepower/clickhouse_sinker

clickhouse_sinker is a sinker program that efficiently transfers Kafka messages into ClickHouse for real-time data analytics and storage.

nikepan/clickhouse-bulk

ClickHouse-Bulk is a tool that collects many small insert requests and sends them as larger bulk inserts to Yandex ClickHouse servers to improve data ingestion efficiency.

uber/storagetapper

StorageTapper is a scalable real-time MySQL change data streaming, logical backup, and replication service supporting multiple data destinations including experimental Clickhouse integration.

long2ice/synch

Synch is a data synchronization tool that enables full and incremental ETL from PostgreSQL and MySQL databases to ClickHouse, supporting real-time data integration and multiple broker options.