Openflow Connector for Snowflake to Kafka について¶
注釈
コネクタには、 コネクタ利用規約 が適用されます。
このトピックでは、 Openflow Connector for Snowflake to Kafka の基本概念と制限事項について説明します。
コネクタはSnowflakeストリームを消費し、消費した CDC 記録をKafkaトピックに送信します。Snowflake Streamオブジェクトは、テーブルに行ったデータ操作言語(DML)による挿入、更新、削除などの変更と、各変更に関するメタデータを記録し、変更されたデータを使用してアクションを実行できるようにします。このプロセスは、変更データキャプチャ(CDC)と呼ばれます。
このコネクタは、以下を実行する場合に使用します。
CDC を使用してSnowflakeテーブルをApache Kafkaに複製し、リアルタイムのインサイト配信とイベント駆動型アーキテクチャを実現します。
ワークフロー¶
CDC データを受信するKafkaブローカーの構成によっては、ワークフローが若干異なる場合があります。
Snowflakeアカウント管理者は以下のタスクを実行します。
CDC データのソースとなるSnowflakeストリームを作成または識別します。
コネクタが使用するウェアハウスを指定します。
コネクタが使用するSnowflakeユーザーと、このユーザーのロールを構成または識別します。ユーザーは、ソースSnowflakeストリームに対して適切な権限を持っている必要があります。最低でも、ユーザーにはSnowflakeストリームを含むデータベースとスキーマに対する USAGE 権限、ストリームとストリームの基になるテーブルまたはビューオブジェクトに対する SELECT 権限が必要です。
Kafka管理者は以下のタスクを実行します。
Snowflakeストリームからキャプチャされた CDC の宛先となるKafkaブローカーとトピックを作成または識別します。
コネクタで使用するKafkaブローカーの認証メカニズムを設定します。
データエンジニアは以下のタスクを実行します。
コネクタのインストールと構成を行います。
Snowflakeの認証情報と構成を提供します。
Kafkaの認証情報と構成を提供します。
コネクタのパラメーターを提供します。
ストリームのメタデータ列¶
ストリームのメタデータ列である METADATA$ROW_ID
、 METADATA$ISUPDATE
、および METADATA$ACTION
がKafkaトピックに送信されます。これらの列の名前は、Kafkaに送信される前に変更されます。送信される JSON メッセージのペイロードでは、これらは METADATA_ROW_ID
、 METADATA_ISUPDATE
、 METADATA_ACTION
となります。
詳細については、 ストリーム列 をご参照ください。
制限事項¶
単一のコネクタでは、1つのSnowflakeストリームの1つの CDCs のみをキャプチャできます。
メッセージはスキーマなしで送信されます。
スキーマの進化はサポートされていません。