15-09-2026

ClickHouse introduceert WalShadow voor subsecond replicatie

ClickHouse introduceert WalShadow, een open-source engine voor subsecond replicatie vanuit PostgreSQL naar ClickHouse via physical WAL. In tegenstelling tot bestaande CDC-routes leest WalShadow rechtstreeks de fysieke write-ahead log van PostgreSQL. Volgens benchmarks van ClickHouse werd data na een commit binnen ongeveer 200 milliseconden zichtbaar in ClickHouse. Het bedrijf maakte WalShadow vorige week bekend.

WalShadow gebruikt daarvoor niet de gebruikelijke logical replication van PostgreSQL. In plaats daarvan leest de engine dezelfde physical WAL-stream die PostgreSQL gebruikt voor fysieke replicatie en recovery. De wijzigingen worden buiten de brondatabase gedecodeerd en vervolgens rechtstreeks als ClickHouse-native blocks naar ClickHouse geschreven.

Volgens ClickHouse vermindert deze aanpak de afhankelijkheid van logical replication slots en kan daarmee ook een deel van de overhead op de PostgreSQL-bron verdwijnen. WalShadow ondersteunt onder meer initial load, continue replicatie, schemawijzigingen, herstel na een restart en geplande switchovers van de bron.

Physical WAL als basis

WAL staat voor Write-Ahead Log. PostgreSQL schrijft wijzigingen eerst naar deze log voordat ze definitief in de databasebestanden worden verwerkt. Physical replication gebruikt deze log om wijzigingen op een andere PostgreSQL-instance te reproduceren.

WalShadow gebruikt dezelfde physical WAL-stream, maar zet de wijzigingen om naar een vorm die ClickHouse kan verwerken. Hiervoor houdt de engine onder meer een actuele kopie van het PostgreSQL-schema bij. Datawijzigingen worden parallel gedecodeerd en samengevoegd tot ClickHouse-native blocks, die vervolgens parallel worden geschreven.

Een aparte logical decoding output plugin, Kafka-laag of tussenformaat zoals JSON is volgens ClickHouse daardoor niet nodig.

Omdat blocks parallel worden verwerkt, kunnen ze in ClickHouse in een andere volgorde aankomen. WalShadow voegt daarom de oorspronkelijke WAL-positie aan iedere rij toe. ClickHouse kan daarmee de meest recente versie per sleutel bepalen. Voor bewerkingen waarbij de volgorde wel strikt moet blijven, zoals schemawijzigingen en truncates, gebruikt WalShadow barrières.

289.000 rijen per seconde in benchmark

ClickHouse vergeleek WalShadow met PeerDB, zijn bestaande CDC-technologie voor replicatie vanuit PostgreSQL via logical replication. In deze test draaiden PostgreSQL, ClickHouse en de replicatietools in dezelfde regio.

Volgens ClickHouse behaalde WalShadow een commit-to-visible latency van ongeveer 200 milliseconden. Een native fysieke PostgreSQL-replica kwam in dezelfde test uit op ongeveer 50 milliseconden en PeerDB op circa tien seconden.

Bij de throughputtest verwerkte de PostgreSQL-bron ongeveer 290.000 ingevoegde rijen per seconde. WalShadow repliceerde volgens ClickHouse ongeveer 289.000 rijen per seconde. PeerDB kwam in de test uit op circa 120.000 rijen per seconde. De resultaten gelden voor het gebruikte testscenario en zeggen niet automatisch iets over prestaties in andere workloads.

WalShadow is als open-source project beschikbaar. Binnen ClickHouse Managed Postgres wordt de technologie daarnaast aangeboden in private preview. ClickHouse zegt WalShadow de komende maanden verder te willen testen met klanten en andere praktijkworkloads.

Bron: ClickHouse

Adept Events

Deze website gebruikt cookies om de beste gebruikerservaring mogelijk te maken. Meer informatie

Deze site wordt beschermd door reCAPTCHA. Het privacybeleid en de gebruiksvoorwaarden van Google zijn van toepassing.