論理レプリケーション

論理的レプリケーションは、Lakebaseデータベースと別のPostgresデータベース間で行レベルの変更をストリーミングするネイティブのPostgresレプリケーションです。 Lakebaseは外部パブリッシャーから変更を受け取るサブスクライバーとして機能することも、外部サブスクライバーに変更を送信するパブリッシャーとして機能します。

論理レプリケーションを使って既存のPostgresデータベースをLakebaseに移行したり、異なる地域のLakebaseデータベース間でレプリケートしたり、Lakebaseから外部のPostgresデータベースへ変更をストリーミングしたりできます。

概要

まずは外部のPostgresデータベースをLakebaseに複製します。 ガイドはソースの準備、Lakebaseからの購読、変更の確認などを順に説明します。 「 データをLakebaseに複製する」を参照してください。

ユースケース例

利用シーン それが何をするか ガイド
PostgresデータベースをLakebaseに移行する Lakebaseは外部のPostgresパブリッシャーをサブスクライブし、そのデータをコピーしてからユーザーが切り替えるまで最新を維持します。 Lakebaseへのデータ複製
異なるリージョンのLakebaseデータベース間で複製する 例えば、地域横断の読み取りや災害復旧のために、別のリージョンのLakebaseデータベースを同期させておくこと。 Lakebaseからデータを複製する
外部Postgresに変更をストリーミングする Lakebaseは外部のPostgresサブスクライバーに変更を公開します。 Lakebaseからデータを複製する

論理的複製の仕組み

パブリッシャーは、その変更を送信するテーブルの集合である publication を定義します。 購読者はパブリッシャーに接続するサブスクリプションを作成し、既存のデータをコピーし、挿入、更新、削除が発生するたびにそれぞれを適用します。 どのデータベースがどのデータベースに接続するかによって、ネットワークの方向が決まります:

論理レプリケーションの2つの方向。Lakebaseをサブスクライバーとして:外部のPostgresパブリッシャーがLakebaseに変更を送信し、Lakebaseがパブリッシャーにダイヤルアウトします。Lakebaseをパブリッシャーとして:Lakebaseが変更を公開し、外部のPostgresサブスクライバーがダイヤルインしてそれを受け取ります。

論理的複製およびその他のデータ移動手法

論理レプリケーションはPostgresのデータベース間でデータを移動します。 代わりに、Postgresの変更をレイクハウスに移すには、Unityカタログ管理のDeltaテーブルに変更を書き込むLakebase Change Data Feedを使いましょう。 Lakebase との間でデータを移動する方法の完全な比較については、Lakebase との間でデータを移動するをご覧ください。

Limitations

  • 論理レプリケーションはAWSとAzureで利用可能です。
  • 論理的複製はパブリックネットワーク上で動作します。 Private Linkはどちらの方向でもサポートされていません。 加入者の接続はアカウントネットワークポリシーの許可されたインターネット宛先によって制御され、パブリッシャー接続はワークスペースのIPアクセスリストによって制御されます。
  • 同じリージョン内のLakebaseデータベース間のレプリケーションはサポートされていません。 同じ地域のLakebaseデータベース間でサブスクリプションを行っても接続されません。 異なる地域のLakebaseデータベース間のレプリケーションもサポートされています。
  • レプリケーションはリードレプリカではなく、プライマリコンピュートで動作します。
  • 論理的レプリケーションはスキーマではなく、データをコピーします。 レプリケーションを始める前にターゲットテーブルを作成してください。 その後のスキーマ変更はレプリケートされません。
  • 外部テーブルは複製されません。

次のステップ