ClickHouseがPostgresの物理WALを直接読み取り、200msで分析可能に
WalShadow: Sub-second Postgres replication to ClickHouse from physical WAL

ClickHouseがオープンソースのWalShadowを発表。Postgresの物理WALを直接消費し、論理レプリケーションを介さずにClickHouseネイティブブロックへ変換する。ベンチマークではコミットから可視化まで約200ms、秒間289K行を処理し、ソースのPostgresとほぼ同等の性能を実現。スキーマ変更や再起動復旧にも対応し、GitHubで公開中。
WalShadowはPostgresからClickHouseへのレプリケーションに新しいアプローチをとり、事実上ClickHouseを分析用の物理スタンバイに変える。
HNでの議論
10- vmsp
彼らは`wal_level = logical`を使っていない。これは昔からPostgresでCDCを行う「優しい」方法だったが、彼らは`wal_level = replica`に直接向かっている。これは、私の知る限り、Postgres自身のレプリケーション以外でその上に何かを構築するために実際に使われたことはなかった。
これは非常に興味深い。こんなに違いが出るとは思いもしなかった。また、コーディングエージェントへのアクセスがなければ、この種のことは決して実装されなかっただろうと確信している。こうしたプロトコルレベルの詳細を解明するのは、もはやかつてのような膨大な時間の浪費ではなくなった。
- rgbrgb
これはSupabaseでホストされているPostgresでも動くのだろうか?我々の会社のbrain mcp的なもので、Postgresのデータ(サーバーログ、銀行データ、Slackなども含む)をClickHouseにミラーリングしているが、どんな読み取り専用DB接続文字列でも機能するので、非常に非効率なポーリング方式を取っていた。常に改善してレイテンシーをなくしたいと考えている。