この記事では,PostgreSQL データベースの変更データキャプチャ (CDC) ソースをイベントストリームに追加する方法を説明します。
Microsoft Fabric イベント ストリームの PostgreSQL データベース 変更 データ キャプチャ (CDC) ソース コネクタは、PostgreSQL データベースの現在のデータのスナップショットをキャプチャすることができます。 現在、PostgreSQL データベース変更データ キャプチャ (CDC) は、データベースにパブリックにアクセスできる次のサービスからサポートされています。
- Azure Database for PostgreSQL
- Amazon RDS for PostgreSQL
- Amazon Aurora PostgreSQL
- Google Cloud SQL for PostgreSQL
PostgreSQL データベース CDC ソースがイベントストリームに追加されると、指定したテーブルに対する行レベルの変更がキャプチャされます。 その後、これらの変更をリアルタイムで処理し、別の宛先に送信して詳細な分析を行うことができます。
注
このソースは、ワークスペース容量の次のリージョンではサポートされていません: 米国西部 3、スイス西部。
前提条件
共同作成者以上のアクセス許可を使用した Fabric 容量ライセンス モード (または試用版ライセンス モード) でのワークスペースへのアクセス。
PostgreSQLデータベースへの登録済みユーザーアクセス。
PostgreSQL データベースはパブリックにアクセスできる必要があり、ファイアウォールの内側やVirtual Network内で保護されてはなりません。
PostgreSQL データベースとテーブルで CDC が有効になっている。
PostgreSQL 用の Azure データベースがある場合は、次のセクションの手順に従って CDC を有効にします。 詳細の情報については「論理レプリケーションと論理デコード - PostgreSQL 用 Azure データベース - フレキシブル サーバー」を参照してください。
その他の PostgreSQL データベースについては「PostgreSQL 用の Debezium コネクタ :: Debezium のドキュメント」を参照してください。
イベントストリームがない場合は、イベントストリームを作成します。
PostgreSQL データベースで CDC を有効にする
このセクションでは、 Azure Database for PostgreSQL を例として使用します。
Azure Database for PostgreSQL フレキシブル サーバーで CDC を有効にするには、次の手順に従います。
Azure portal の Azure Database for PostgreSQL フレキシブル サーバー ページで、ナビゲーション メニューの [サーバー パラメーター] を選択します。
サーバーパラメータページで
- wal_levelをlogicalに設定します。
- max_worker_processesを少なくとも16 に更新します。
変更点を保存し、サーバーを再起動します。
PostgreSQL Azure Database for PostgreSQL フレキシブル サーバー インスタンスでパブリック ネットワーク トラフィックが許可されていることを確認します。
次の SQL ステートメントを実行して、管理者 ユーザーにレプリケーションアクセス許可権限を許可します。 他のユーザー アカウントを使用して PostgreSQL DB を接続して CDC をフェッチする場合は、ユーザーが テーブル所有者であることを確認します。
ALTER ROLE <admin_user_or_table_owner_user> WITH REPLICATION;
データ ソースの選択ウィザードを起動する
イベントストリームにまだソースを追加していない場合は、[外部ソースの使用] タイルを選択します。
既に公開されているイベントストリームにソースを追加する場合は、編集モードに切り替え、リボンの [ソースの追加] を選択してから、[外部ソース] を選択します。
[データ ソースの選択] ページで、PostgreSQL DB (CDC) タイルで [接続] を検索して選択します。
PostgreSQL Database CDC の構成と接続
接続ページで、新しい接続 を選択します。
接続設定セクションで、次の情報を入力します。
サーバー: PostgreSQL データベースのサーバー アドレス (my-pgsql-server.postgres.database.azure.com など)。
データベース: データベース名 (my_database など)。
接続名: 接続の名前を入力します。
[認証の種類] で [ 基本 ] を選択し、データベースの ユーザー名 と パスワード を入力します。
注
現時点では、Fabric イベント ストリームでは 基本 認証のみがサポートされています。
[ 接続 ] を選択して接続設定を完了します。
ポート: サーバーのポート番号を入力します。 既定値は 5432 です。 選択したクラウド接続が [接続とゲートウェイの管理] で構成されている場合は、ポート番号がそこに設定されているポート番号と一致していることを確認します。 一致しない場合は、[ 接続とゲートウェイの管理 ] のクラウド接続のポート番号が優先されます。
データベース テーブルから変更をキャプチャする場合は、次の 2 つのオプションから選択できます。
- すべてのテーブル: データベース内のすべてのテーブルからの変更をキャプチャします。
-
テーブル名の入力: コンマ区切りリストを使用して、テーブルのサブセットを指定できます。
schemaName.tableName
形式の完全なテーブル識別子または有効な正規表現のいずれかを使用できます。 例: -
dbo.test.*
:test
スキーマで名前がdbo
で始まるすべてのテーブルを選択します。 -
dbo\.(test1|test2)
:dbo.test1
とdbo.test2
を選択します。
リスト内の両方の形式を組み合わせることができます。 エントリ全体の文字制限の合計は 102,400 文字です。
スロット名 (省略可能): 特定のデータベース/スキーマの特定のプラグインからの変更をストリーミングするために作成された PostgreSQL 論理デコード スロットの名前を入力します。 サーバーはこのスロットを使用して、イベントを Eventstream ストリーミング コネクタにストリーミングします。 小文字、数字、アンダースコアのみを含める必要があります。
- 指定しない場合は、適切なデータベースのアクセス許可を必要とする、スロットの作成に GUID が使用されます。
- 指定されたスロット名が存在する場合、コネクタはそれを直接使用します。
[詳細設定] を展開して、PostgreSQL データベース CDC ソースの追加の構成オプションにアクセスできます。
パブリケーション名: 使用する PostgreSQL 論理レプリケーション パブリケーションの名前を指定します。 これは、データベース内の既存のパブリケーションと一致する必要があります。または、自動作成モードに応じて自動的に作成されます。 既定値:
dbz_publication
。注
コネクタ ユーザーは、パブリケーションを作成するためのスーパーユーザーのアクセス許可を持っている必要があります。 アクセス許可に関連する問題を回避するために、コネクタを初めて起動する前に、パブリケーションを手動で作成することをお勧めします。
パブリケーションの自動作成モード: パブリケーションを自動的に作成するかどうかを制御します。 オプションは次のとおりです。
-
Filtered
(既定値): 指定したパブリケーションが存在しない場合、コネクタは選択したテーブルのみを含むパブリケーションを作成します (テーブルインクルード リストで指定されています)。 -
AllTables
: 指定したパブリケーションが存在する場合、コネクタはそれを使用します。 存在しない場合、コネクタはデータベース内のすべてのテーブルを含むテーブルを作成します。 -
Disabled
: コネクタはパブリケーションを作成しません。 指定したパブリケーションがない場合、コネクタはエラーをスローして停止します。 この場合、パブリケーションをデータベースに手動で作成する必要があります。
詳細については、パブリケーションの自動作成モードに関する Debezium ドキュメントを参照してください。
-
10 進処理モード: コネクタが PostgreSQL
DECIMAL
とNUMERIC
列の値を処理する方法を指定します。-
Precise
: 正確な 10 進型 (JavaBigDecimal
など) を使用して値を表し、データ表現の完全な精度と精度を確保します。 -
Double
: 値を倍精度浮動小数点数に変換します。 これにより、使いやすさとパフォーマンスが向上しますが、精度が失われる可能性があります。 -
String
: 値を書式設定された文字列としてエンコードします。 これにより、ダウンストリーム システムで簡単に使用できますが、元の数値型に関するセマンティック情報は失われます。
-
[確認と接続] ページで概要を確認してから、[追加] を選択します。
更新されたイベントストリームを表示する
[編集モード] でイベントストリームに追加された PostgreSQL データベースの CDC ソースを確認できます。
この新しく追加された PostgreSQL DB CDC ソースを実装するには、公開する を選択します。 これらの手順を完了すると、PostgreSQL DB CDC ソースを [ライブ ビュー] で視覚化できるようになります。
関連するコンテンツ
その他のコネクタ。