Postgres MigrationClickHouse Workshops

RDS Postgres to ClickHouse Managed Postgres

Move a live e-commerce workload off AWS RDS Postgres, stream its analytical copy into ClickHouse, and route the dashboard's unchanged SQL to it.

Your computer
macOS terminal: Run workshop commands in Terminal using zsh or bash.

Four to six hours. You start with one RDS Postgres instance serving both a checkout path and an operations dashboard, and finish with the transactional workload on ClickHouse Managed Postgres, the analytical workload on ClickHouse, and a dashboard whose SQL you never edited.

Modules

ModuleTimeLearnerInstructorDone when
0030-45 minSetupnotesTooling verified on your platform
0145-60 minSource environment and baselinenoteswal_level is logical, the seed has finished, and results/before.json exists
0230-45 minPlan the cutovernotesrunbook/cutover.md has no TODO left in it
0345-60 minReplicatenotesThe migration pipe's initial load is complete, its slot has stopped falling behind, and the failure injection has been run and repaired
0435-50 minCut overnotesThe writer commits against Managed Postgres, sequences match, reconciliation passes, no slot remains on RDS
0530-45 minStream the analytical copynotesThe ClickPipe's initial load is complete and CDC is caught up
0645-60 minRoute the OLAP workloadnotesEXPLAIN shows a Foreign Scan for the analytics role and a local plan for the writer, the pushdown repair is done, and results/after.json exists
0735-45 minValidate and tear downnotesThe quiz is submitted and nothing is left running in either account

Module 02 runs while module 01's seed finishes, so the times above overlap by roughly half an hour. That scheduling is deliberate: it is the module that costs no infrastructure and absorbs the seed's runtime.

This workshop provisions real AWS infrastructure in your own account. Module 00 states the expected cost and module 07 ends with teardown.

ในหน้านี้

TH