Openflow Connector for SQL Server について¶
注釈
コネクタには、 コネクタ利用規約 が適用されます。
このトピックでは、 Openflow Connector for SQL Server の基本概念、ワークフロー、および制限事項について説明します。
Openflow Connector for SQL Server は、 SQL Server データベースインスタンスをSnowflakeに接続し、選択したテーブルのデータをほぼリアルタイムで、または指定したスケジュールで複製します。
このコネクタは、以下を実行する場合に使用します。
包括的で一元化されたレポート作成のため、 CDC を使ってMicrosoft SQL ServerデータをSnowflakeで複製する
ワークフロー¶
SQL Serverデータベース管理者は以下のタスクを実行します。
SQL Server の複製設定を構成し、データベースとテーブルの変更追跡を有効にします。
コネクタの認証情報を作成します。
(オプション) SSL 証明書を提供します。
Snowflakeアカウント管理者は以下のタスクを実行します。
コネクタのサービスユーザー、コネクタのウェアハウス、複製する宛先データベースを作成します。
コネクタ定義ファイルをダウンロードしてSnowflake Openflowキャンバスにインポートします。
コネクタフロー定義に必要なパラメーターを指定します。
フローを実行します。Openflowでの実行時にコネクタは以下を行います。
ジャーナルテーブルのスキーマを作成します。
複製用に構成されたソーステーブルと一致するスキーマと宛先テーブルを作成します。
テーブルの複製方法 で説明されているように、テーブル複製のライフサイクルに従って複製を開始します。
テーブルの複製方法¶
テーブルは以下のステージで複製されます。
スキーマのイントロスペクション: コネクタは、列名やタイプを含むソーステーブルの列を検出し、Snowflakeとコネクタの制限事項に対してそれらを検証します。検証に失敗するとこのステージは失敗し、サイクルが完了します。このステージが正常に終了すると、コネクタは空の宛先テーブルを作成します。
スナップショットロード: コネクタは、ソーステーブルで利用可能なすべてのデータを宛先テーブルにコピーします。このステージが失敗した場合、それ以上のデータは複製されません。正常に完了すると、ソーステーブルのデータが宛先テーブルで利用可能になります。
増分ロード: コネクタはソーステーブルの変更を追跡し、その変更を宛先テーブルに適用します。このプロセスはテーブルが複製から削除されるまで続きます。このステージで失敗すると、問題が解決するまでソーステーブルの複製が永久的に停止します。
注釈
一時的な失敗(接続エラーなど)が発生しても、テーブルの複製は妨げられません。しかし、永久的な失敗(サポートされていないデータ型など)が発生すると、テーブルの複製ができなくなります。永久的な失敗によってテーブルが複製できなくなった場合、複製するテーブルのリストからそのテーブルを削除します。失敗の原因となった問題に対処したら、複製するテーブルのリストに戻すことができます。
サポートされている SQL Serverバージョン¶
以下のテーブルに、テスト済みで公式にサポートされている SQL Serverバージョンを一覧表示します。
2017 |
2022 |
|
---|---|---|
有り |
有り |
|
有り |
有り |
制限事項¶
コネクタは、 SQL Serverでのユーザー名とパスワードによる認証のみをサポートしています。
コネクタは、Snowflakeでサポートされているデータ型のテーブルのみを複製します。これらのデータ型のリストについては、 データ型の概要 をご参照ください。
コネクタでは、複製されるすべてのテーブルに主キーが必要です。
コネクタは、マルチクラスタのOpenflowランタイムをサポートしていません。
デフォルト値を持つ新しい NOT NULL 列がソースデータベースに追加されても、コネクタはSnowflakeデータベースの既存の記録を更新しません。
列フィルター JSON に含まれたリストに新しい列が追加されても、コネクタはSnowflakeデータベースの既存の記録を更新しません。
ソースデータベースで列を削除し、同じ名前で追加し直した後、さらに削除するとエラーが発生します。
列フィルター JSON に列を含めて除外した後、さらに含めようとするとエラーが発生します。
コネクタは、主キーの定義の変更、数値列の精度やスケールの変更を除いて、ソーステーブルのスキーマの変更をサポートしています。
コネクタは、テーブルの切り捨て操作をサポートしていません。
注釈
特定の列を複製から除外することで、特定のテーブル列に影響する制限を回避できます。