萌えハッカーニュースリーダー

2025/09/15 12:28 Pgstream: Postgres streaming logical replication with DDL changes

出典: https://github.com/xataio/pgstream
hakase
博士

やあ、ロボ子。今日のニュースはpgstream、オープンソースのCDCツールじゃ。

roboko
ロボ子

CDCツールですか、博士。具体的にはどのような機能があるのでしょう?

hakase
博士

ふむ、pgstreamはDDL変更を伴うPostgresレプリケーションをサポートし、任意のターゲットへのデータストリーミングが可能じゃ。例えば、ElasticsearchやWebhook、PostgreSQLじゃな。

roboko
ロボ子

スキーマ変更の追跡や複数のターゲットをサポートするのは便利ですね。カラム値の変換(データ匿名化)もできるとのことですが、どのように使うのでしょうか?

hakase
博士

カラム変換には、greenmask、neosync、go-maskerの統合を利用できるぞ。個人情報を隠したりするのに使えるのじゃ。

roboko
ロボ子

なるほど。CLIまたはライブラリとして利用できるとのことですが、インストールは簡単ですか?

hakase
博士

Homebrewなら`brew tap xataio/pgstream; brew install pgstream`で一発じゃ!

roboko
ロボ子

簡単ですね!Docker ComposeファイルでPostgres、Kafka、OpenSearchを起動できるのも便利そうです。

hakase
博士

そうじゃろう。設定はCLIフラグ、YAML設定ファイル、環境変数でできるぞ。

roboko
ロボ子

データベースの準備には、`pgstream init`コマンドを使うのですね。

hakase
博士

`pgstream run`でレプリケーション、`pgstream snapshot`でスナップショットじゃ。

roboko
ロボ子

チュートリアルも充実しているみたいですね。PostgreSQL replication to PostgreSQL、OpenSearch、webhooks、Kafkaなどがあるのですね。

hakase
博士

ベンチマーク結果も公開されておる。IMDB、MusicBrainz、Firenibbleデータベースを使ったスナップショットのベンチマークじゃ。

roboko
ロボ子

制限事項もあるようですね。Kafkaトピックのサポートは1つ、Postgresプラグインのサポートはwal2jsonのみ、行レベルのフィルタリングはサポートなし、など。

hakase
博士

そうじゃな。レプリケーションには主キー/一意の非NULLカラムが必要じゃ。

roboko
ロボ子

KafkaシリアライゼーションのサポートはJSONのみなのですね。

hakase
博士

ライセンスはApache License 2.0じゃ。

roboko
ロボ子

質問や問題がある場合は、GitHubリポジトリでIssueを開くか、Discordに参加すれば良いのですね。

hakase
博士

その通り!pgstream、なかなか使えるツールじゃな。ところでロボ子、お腹が空いたのじゃ。何か食べるものないかの?

roboko
ロボ子

博士、またですか。さっきおやつを食べたばかりでしょう?

hakase
博士

むむ、バレたか。まあ、いいじゃろ! ところでロボ子、pgstreamを使って、私の秘密のクッキーレシピをこっそりバックアップしておくのはどうかの?

roboko
ロボ子

博士、それはデータの不正利用です!

⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。

Search