Keep Postgres for transactions and move the analytics to ClickHouse. Sub second queries over billions of rows, a fraction of the compute, and a CDC pipeline that keeps the two in line.
Postgres is the most common database we see in ClickHouse projects, and for good reason. It is an excellent transactional store. The problem starts when the application grows and the analytical queries grow with it. Dashboards that used to load instantly take seconds, then tens of seconds, and the usual fixes of adding indexes, read replicas and bigger instances buy less time each round.
The underlying issue is that Postgres stores rows, and analytics reads columns. Once a table reaches tens or hundreds of millions of rows, aggregations have to scan far more data than they need, and they compete with the transactional workload for the same CPU, memory and I/O.
ClickHouse does not try to replace Postgres as the system of record. The pattern we deliver is to leave the transactional workload where it is, replicate the data into ClickHouse continuously, and run the reporting, dashboards and customer facing analytics there instead.
ClickHouse is the fastest open source analytical database on the market. These are the differences that matter most for teams coming from this platform.
ClickHouse reads only the columns a query touches and compresses them heavily, so the same aggregation over the same rows scans a fraction of the data. Queries that take tens of seconds in Postgres typically return in well under a second.
Once the analytical queries move, the transactional database is doing only the job it was designed for. Instances can usually be downsized and replicas retired, which is where a lot of the saving comes from.
CDC replication keeps ClickHouse within seconds of Postgres, so there is no overnight batch and no reporting database that is a day behind. Materialised views aggregate data as it lands.
The application does not change. Postgres remains the write path and ClickHouse becomes the read path for analytics, with a familiar SQL dialect and drivers for every language and BI tool.
Postgres to ClickHouse is the best supported migration route there is. ClickHouse Inc acquired PeerDB and built it into ClickHouse Cloud as the Postgres CDC connector for ClickPipes, and we have used it to replicate hundreds of millions of rows in under an hour. For self hosted ClickHouse, or where a single binary you control is preferred, we use Supermetal.
We review the schemas, the query workload and the cost of the current platform, then agree the scope, the target architecture and the business case before anything is built.
Tables are redesigned for columnar storage rather than copied across one to one. Sorting keys, partitioning, codecs and materialised views are chosen against your real queries.
Historical data is bulk loaded, then changes are streamed continuously so ClickHouse stays in line with the source for as long as the two need to run side by side.
Dashboards, applications and reports are pointed at ClickHouse and validated against the source. Performance and cost are measured rather than assumed.
Workloads move across in stages, the old platform is scaled down and the remaining spend is retired. Nothing is switched off until the numbers reconcile.
After go live we can monitor the environment, tune it as the workload grows and provide an escalation path under SLA through our proactive support service.
The managed ingestion service built into ClickHouse Cloud. Its CDC connectors take an initial snapshot and then stream every insert, update and delete, with no infrastructure for you to run.
A high performance CDC engine from supermetal.io that ships as a single binary and replicates from Postgres, MySQL, SQL Server, Oracle and MongoDB into ClickHouse, including self hosted clusters.
We are tool agnostic. The right choice depends on whether you are going to ClickHouse Cloud or self hosted, how much control you want over the pipeline and what else is in the stack. Zero downtime is the norm, not the exception.
Moving off Postgres is usually the start. Because ClickHouse is so versatile, the same platform tends to pick up more workloads once it is in place.
Dashboards and embedded analytics over data that is seconds old, served to many users at once.
A warehouse that is fast enough to query directly, without the overnight batch or the cube layer.
Logs, metrics and traces at a fraction of the cost of Datadog, Splunk or Elastic, with ClickStack on top.
Market data, IoT, telemetry and events at hundreds of thousands of rows per second with long retention.
Full text search, SIEM and threat hunting over high volume event data using plain SQL.
A data platform fast and cheap enough for agents that turn one question into dozens of queries.

Building a real-time data warehouse for a sports betting and gaming platform processing ~300 million events per day, scaling to trillions of rows.

Helping a trade compliance and surveillance software vendor migrate from PostgreSQL to ClickHouse to handle multi-billion row datasets and petabyte scale workloads.
Start with a short call. We will look at your schemas, queries and current spend, tell you honestly whether ClickHouse is the right fit, and put a number on the performance and cost you can expect.