次の方法で共有


MySQL データベース CDC をソースとしてリアルタイム ハブに追加する

この記事では、Azure Cosmos DB Change Data Capture (CDC) を Fabric Real-Time ハブのイベント ソースとして追加する方法について説明します。

Azure MySQL Database Change Data Capture (CDC) コネクタを使用すると、Azure MySQL データベース内の現在のデータのスナップショットをキャプチャできます。 監視対象のテーブルを指定し、後続の行レベルがテーブルに変更されたときにアラートを受け取ります。 ストリームに変更がキャプチャされると、この CDC データをリアルタイムで処理し、Fabric 内のさまざまな宛先に送信して、さらに処理または分析することができます。

前提条件

  • 共同作成者以上のアクセス許可を使用して Fabric 容量ライセンス モード (または試用版ライセンス モード) でワークスペースにアクセスします。
  • Azure Database for MySQL フレキシブル サーバーのインスタンスを作成する

SQL データベースを設定する

Azure MySQL データベース コネクタは、Debezium MySQL コネクタを使用して、MySQL データベースの変更をキャプチャします。 コネクタが監視するすべてのデータベースに対するアクセス許可を持つ MySQL ユーザーを定義する必要があります。 詳細な手順については、MySQL Database (DB) のセットアップに関するページを参照してください。

binlog を有効にする

MySQL レプリケーションのバイナリ ログを有効にする必要があります。 バイナリ ログには、変更を反映するためのレプリケーション ツールのトランザクションの更新が記録されます。 Azure Database for MySQL シンク スクリプトの例

  1. Azure portal で、お使いの Azure Database for MySQL に移動します。

  2. 左側のメニューで、[サーバー パラメーター] を選択します。

  3. 次のプロパティを使用して MySQL サーバーを構成します。

    • binlog_row_image: 値を full設定します。
    • binlog_expire_logs_seconds: binlog ファイルの自動削除の秒数。 環境のニーズに合わせて値を設定します。 (例: 86400)。

    Azure MySQL データベースの [サーバー パラメーター] ページを示すスクリーンショット。

Azure MySQL Database (CDC) からイベントを取得する

次のいずれかの方法で、Azure MySQL データベース CDC からリアルタイム ハブにイベントを取得できます。

データ ソース ページ

  1. Microsoft Fabric にサインインします。

  2. 左側のナビゲーション バーで [リアルタイム] を選択します。

  3. [リアルタイム ハブ] ページで、左側のナビゲーション メニューの [接続先] の下にある [+ データ ソース] を選択します。 また、右上にある [+ データ ソースに接続] ボタンを選択して、[すべてのデータ ストリーム] ページまたは [マイ データ ストリーム] ページから [データ ソース] ページにアクセスすることもできます。

    [データ ソースに接続] エクスペリエンスを起動する方法を示すスクリーンショット。

  1. [データ ソース] ページで、上部にある [データベース CDC] カテゴリを選択し、[MySQL DB (CDC)] タイル上の [接続] を選択します。

    [データ ソース] ページで [MySQL DB (CDC)] が選択されていることを示すスクリーンショット。

    「ソースとして Azure MySQL データベース CDC を追加する」セクションの手順を使用します。

[Microsoft ソース] ページ

  1. リアルタイム ハブで、[Microsoft ソース] を選択します。

  2. [ソース] ドロップダウン リストで、[Azure MySQL DB (CDC)] を選択します。

  3. [サブスクリプション] で、お使いの Cosmos DB アカウントを持つリソース グループを含む Azure サブスクリプションを選択します。

  4. [リソース グループ] では、お使いの IoT ハブのあるリソース グループを選択します。

  5. [リージョン] では、IoT ハブのある場所を選択します。

  6. 次に、データベースの一覧でリアルタイム ハブに接続する Azure MySQL DB CDC ソースの名前の上にマウスを移動し、[接続] ボタンを選択するか、[...(省略記号) をクリックし、[接続] ボタンを選択します。

    Azure MySQL CDC を表示するフィルターと接続ボタンがある [Microsoft ソース] ページを示すスクリーンショット。

    接続情報を構成するには、「ソースとして Azure MySQL DB CDC を追加する」セクションの手順を使用します。

ソースとしての Azure Database for MySQL

  1. データ 接続ページで、新しい接続を選択します

    **[新しい接続]** リンクが強調表示されている [ソースの追加] ウィザードの [接続] ページを示すスクリーンショット。

  2. [設定] セクションで、[接続文字列] を選択します。

    1. [サーバー] 、Azure MySQL サーバーの URI を入力します。

    2. [databasename] で、データベースの名前を入力します。

      接続文字列の設定を示すスクリーンショット。

  3. [接続資格情報] セクションで、次の手順を実行します。

    1. [接続] で、MySQL データベースへの既存の接続があるかどうかを選択します。 そうでない場合は、既定値のままにします。 新しい接続を作成します。

    2. [認証の種類] で、[Basic] を選択します。 現在サポートされているのは [基本認証] のみです。

    3. ユーザー名パスワードの値を入力します。

    4. 暗号化された接続使用するかどうかを指定します。

    5. [接続] を選択します。

      Linux ベースの資格情報の構成を示すスクリーンショット。

  4. [接続] ページに戻り、次の手順を実行します。

    1. [規則名] を入力します。
    2. エラー ID を入力してください
    3. ポート番号入力するか、既定値のままにします。
  5. 右側のウィンドウの [ストリームの詳細] セクションで、次の手順を実行します。

    1. この接続とウィザードによって作成されるイベントストリームを保存する Fabric ワークスペースを選択します。

    2. イベント ハウスの名前を入力します

    3. リアルタイム ハブ内のストリームの名前が自動的に作成されます。

      すべての必須フィールドが指定された「接続」ページを示すスクリーンショット。

  6. ページの下部にある [次へ] を選択します。

  7. [確認と接続] で、設定を確認し、[ソースの作成] を選択します。

    すべての必須フィールドが指定された [確認と接続] ページを示すスクリーンショット。

  8. [接続] ページで、 [リソースに移動] を選択してAzure PostgreSQL データベースに移動します。 [概要] ペインで、[サーバー名] の値を記録しておきます。 または という形式で指定しますmysqlserver.mysql.database.azure.com

    「リソースに移動」リンクが強調表示された「接続」ページを示すスクリーンショット。

データ ストリームの詳細を表示する

  1. [確認と接続] ページで、[イベントストリームを開く] を選択した場合、ウィザードは、選択した Azure MySQL DB CDC をソースとして作成したイベントストリームを開きます。 ウィザードを閉じるには、ページの右上隅にある [完了] または [X]* を選択します。

    ソースの作成が正常に完了した後の [確認と接続] ページを示すスクリーンショット。

  2. リアルタイム ハブで、[マイ データ ストリーム] を選択します。 新しいデータ ストリームを表示するには、ページを最新の情報に更新します。

    MySQL Database CDC ソースに基づくストリームを含むリアルタイム ハブの [マイ データ ストリーム] ページを示すスクリーンショット。

    詳細な手順については、「Fabric リアルタイム ハブでのデータ ストリームの詳細の表示」を参照してください

データ ストリームの使用について詳しくは、次の記事を参照してください。