Openflow Connector for SQL Server について¶
注釈
This connector is subject to the Snowflake Connector Terms.
This topic describes the basic concepts, workflow, and limitations of the Openflow Connector for SQL Server.
Use the Openflow Connector for SQL Server to connect multiple SQL Server databases in a single SQL Server instance to a Snowflake database and replicate data in near real-time or on a specified schedule.
The connector performs CDC replication of Microsoft SQL Server data with Snowflake for comprehensive, centralized reporting.
ワークフロー¶
以下のワークフローは、|Sqlserver|をセットアップして実行する手順の概要を示しています。
SQL Serverデータベース管理者は以下のタスクを実行します。
Configures SQL Server replication settings and enables change tracking on the databases and tables being replicated.
コネクタの認証情報を作成します。
(Optional) Provides the SSL certificate to connect to the SQL Server instance over SSL.
Snowflakeアカウント管理者は以下のタスクを実行します。
コネクタのサービスユーザー、複製されたデータを格納する宛先データベース、コネクタのウェアハウスを作成します。
コネクタをインストールします。
コネクタフロー定義に必要なパラメーターを指定します。
フローを実行します。
The connector does the following when run in Openflow:
複製用に構成されたソーステーブルと一致するスキーマと宛先テーブルを作成します。
Begins replication according to the table replication lifecycle.
詳細については、 テーブルの複製方法 をご参照ください。
複数のSQL Server データベースのテーブルからデータを複製する¶
コネクタは、単一のSQL Serverインスタンス内の複数のSQL Serverデータベースからのテーブルの複製をサポートします。コネクタは、宛先Snowflakeデータベースの個別のスキーマにある異なるデータベースから複製されたテーブルを作成します。
ソースデータベース名、ソーススキーマ名、テーブル名を次の形式で組み合わせて、複製されたテーブルを参照します。
<database_name>.<schema_name>.<table_name>
複製される各ソースデータベースのスキーマごとに、コネクタは宛先のSnowflakeデータベースに個別のスキーマを作成します。宛先スキーマの名前は、次の例に示すように、ソースデータベース名とソーススキーマ名をアンダースコア文字(_)で区切った組み合わせで表されます。
<source_database_name>_<source_schema_name>
次の例に示すように、コネクタは宛先スキーマにソーステーブル名と同じ名前のテーブルを作成します。
<destination_database>_<destination_schema_name>.<source_table_name>
テーブルの複製方法¶
The connector replicates tables in the following stages:
Schema introspection: The connector discovers the columns in the source table, including the column names and types, then validates them against Snowflake's and the connector's limitations. Validation failures cause this stage to fail, and the cycle completes. After successful completion of this stage, the connector creates an empty destination table.
Snapshot load: The connector copies all data available in the source table into the destination table. If this stage fails, the connector stops replicating data. After successful completion, the data from the source table is available in the destination table.
増分ロード: コネクタはソーステーブルの変更を追跡し、その変更を宛先テーブルに適用します。このプロセスはテーブルが複製から削除されるまで続きます。このステージで失敗すると、問題が解決するまでソーステーブルの複製が永久的に停止します。
スナップショットロードのバイパスと増分ロードプロセスの使用については、 増分複製 をご参照ください。
注釈
Interim failures, such as connection errors, do not prevent table replication. However, permanent failures, such as unsupported data types, prevent table replication. If a permanent failure prevents table replication, remove the table from the list of tables to be replicated. After you address the problem that caused the failure, you can add the table back to the list of tables to be replicated.
サポートされている SQL Serverバージョン¶
以下のテーブルに、テスト済みで公式にサポートされている SQL Serverバージョンを一覧表示します。
プラットフォーム |
サービス/バージョン |
エディション/ティア |
サポート対象 |
|---|---|---|---|
オンプレミス |
Developer、Enterprise、Standard |
✔ サポート対象 |
|
Microsoft SQL Server 2019 |
Developer、Enterprise、Standard |
✔ サポート対象 |
|
Microsoft SQL Server 2017 |
Developer、Enterprise、Standard |
✔ サポート対象 |
|
Microsoft SQL Server 2016 |
Developer、Enterprise、Standard |
✔ サポート対象 |
|
Microsoft SQL Server 2014 |
すべて |
未試験 |
|
Microsoft SQL Server 2012 |
すべて |
未試験 |
|
Azure |
すべてのインスタンスタイプ |
Not yet supported |
|
すべてのインスタンスタイプ |
✔ サポート対象 |
||
SQL Server on Azure VM |
すべて |
未試験 |
|
AWS |
すべてのインスタンスタイプ |
✔ サポート対象 |
|
SQL Server for Amazon EC2 |
すべて |
✔ サポート対象 |
|
Google Cloud |
Google Cloud SQL for SQL Server |
すべて |
未試験 |
Openflow要件¶
ランタイムのサイズはM以上である必要があります。大量のデータを複製する場合、特に行サイズが大きい場合は、より大きなランタイムを使用します。
コネクタは、マルチノードのOpenflowランタイムをサポートしていません。このコネクタのランタイムを、 Min nodes および Max nodes を
1に設定して構成します。
制限事項¶
単一のランタイムインスタンスで同じタイプのコネクタを複数実行することはできません。
コネクタは、 SQL Serverでのユーザー名とパスワードによる認証のみをサポートしています。
コネクタは、Snowflakeでサポートされているデータ型のテーブルのみを複製します。これらのデータ型のリストについては、 データ型の概要 をご参照ください。
The connector only replicates database tables that contain primary keys.
The connector does not update existing records in the Snowflake database when a new NOT NULL column with a default value is added to one of the source databases.
列フィルター JSON に含まれたリストに新しい列が追加されても、コネクタはSnowflakeデータベースの既存の記録を更新しません。
After you delete a column in one of the source databases and add it back with the same name, additional deletes cause errors.
After you include a column in Column Filter JSON and exclude it, additional include attempts cause errors.
The connector supports source table schema changes, except for changing primary key definitions, changing the precision, or the scale of a numeric column.
コネクタは、テーブルの切り捨て操作をサポートしていません。
The connector does not support re-adding a column after it is dropped.
注釈
You can bypass limitations affecting certain table columns by excluding these specific columns from replication.