DatriseAI-first ETL

Google Cloud SQL to ClickHouse Integration

AI-first ETL from Google Cloud SQL into ClickHouse. Governed entities, incremental sync, typed landing tables.

How Datrise loads Google Cloud SQL into ClickHouse

Datrise syncs Google Cloud SQL's tables, rows, schemas, indexes, read replicas, and binlog changes into ClickHouse as a MergeTree table per source entity. Flexible or custom fields land in JSON or Map columns, and timestamps such as created, updated, and status changes are typed as DateTime64.

Sync is incremental: Datrise uses inserts into a ReplacingMergeTree keyed on stable id, so the latest version wins on merge, so re-runs update only what changed. Partition by month and order by (entity id, updated-at) for fast range scans. ClickHouse deduplicates asynchronously on merge, so Datrise uses ReplacingMergeTree and FINAL-safe queries rather than assuming immediate upserts.

Ideal for high-volume event analytics that need sub-second aggregation.

Endpoints

Google Cloud SQL: Managed MySQL, PostgreSQL, and SQL Server instances on GCP.

ClickHouse: Columnar OLAP engine for fast aggregations.

How Google Cloud SQL entities map to ClickHouse

Google Cloud SQL entityClickHouse objectNotes
tablesgoogle_cloud_sql_tablesid PK · custom fields → JSON or Map columns
rowsgoogle_cloud_sql_rowsid PK · linked to google_cloud_sql_tables
schemasgoogle_cloud_sql_schemasid PK · linked to google_cloud_sql_tables
indexesgoogle_cloud_sql_indexesid PK · linked to google_cloud_sql_tables

FAQ

How does Datrise handle Google Cloud SQL's custom fields in ClickHouse?

Flexible values are stored as JSON or Map columns, so new fields don't require a migration; strongly-typed fields — dates, numbers, and references — are promoted to native ClickHouse types.

How does the Google Cloud SQL to ClickHouse sync stay up to date?

It runs incrementally — Datrise uses inserts into a ReplacingMergeTree keyed on stable id, so the latest version wins on merge.

Related pipelines

Early access

Connect Google Cloud SQL to ClickHouse the easy way

Skip brittle scripts and manual exports. Join the waitlist to get a guided setup, AI-assisted mapping, and reliable incremental sync for this integration.