編集

次の方法で共有


Azure Synapse Link for SQL の FAQ

このガイドでは、Azure Synapse Link for SQL について最もよく寄せられる質問を紹介します。

いいえ。現在、Azure Synapse Link for SQL では、Synapse 専用 SQL プールがデータのコピー先ストアとしてのみサポートされています。

いいえ。現在、Azure Synapse Link for SQL では、ソース ストアとして Azure SQL Database と SQL Server (SQL Server 2022 以降) のみがサポートされています。

レプリケートするテーブルを追加または削除する場合は、リンク接続を停止する必要がありますか?

いいえ。リンク接続が実行されているときに、テーブルを追加または削除できます。 削除されたテーブルは、自動的にレプリケートされなくなります。 新しく追加されたテーブルは、完全なスナップショットを使用した初期読み込みから開始して、その後に増分同期を実行します。 同じリンク接続内の残りのテーブルは影響を受けません。

ターゲットの専用 SQL プールにコピー先テーブルが存在するため、リンク接続の開始に失敗します。 どうすればよいですか。

リンク接続を開始する前に、コピー先テーブルを削除する必要があります。 これを行うには、Synapse 専用 SQL プールからテーブルを手動で削除するか、[既存のターゲット テーブル上のアクション] ドロップダウン リストで、[ターゲット上のテーブルを削除して再作成する] オプションを選択して、起動時に毎回 Synapse 専用 SQL プール上の既存テーブルが自動的に削除されるようにします。

ソース ストアに対してテーブル列が追加または削除された場合、実行中のリンク接続はどうなりますか?

リンク接続にテーブルを追加した後は、ソース データベース内のこれらのテーブルでは、列の追加、削除、変更は行えません。 このようなスキーマの変更を行うには、テーブルを一時的にリンク接続から削除し、スキーマの変更後に再度追加する必要があります。

リンク接続からデータ レプリケーションを一時停止し、一時停止した場所から再開することはできますか?

はい、できます。

Synapse マネージド プライベート エンドポイントを使用した Synapse ワークスペースでマネージド仮想ネットワークを選択して、リンク接続でソース データベースにプライベート接続できるようにすることはできますか?

はい、できます。 Synapse のすべてのワークロードと同様です。 Azure Synapse マネージド仮想ネットワーク内で Azure Synapse Link for SQL を有効にすることで、SQL から Synapse へデータを安全な方法でレプリケートできます。 マネージド プライベート エンドポイントを使用して、マネージド仮想ネットワークから承認済みターゲットへの送信接続のみを許可することで、データ流出から保護できます。

リンク接続を作成するときに、ソース ストアから Synapse 専用 SQL プールにテーブルをレプリケートするためのコア数を選択するベスト プラクティスは何ですか?

コア数は、ソース ストアから Synapse 専用 SQL プールにデータをレプリケートするために必要なコンピューティング サイズを示します。 これは、ソース データベースのレプリケーション ワークロード パターン、テーブル数、変更の発生率、行のサイズなどに依存します。少ないコア数で開始し、実際のワークロードで待機時間をテストすることをお勧めします。 レプリケーションの待機時間は、リンク テーブルの監視ページに反映できます。最後に処理されたデータ列の時刻が、レプリケーションがどの程度遅れているかを示します。

[enable transaction consistency across tables] (テーブル間のトランザクション整合性を有効にする) を選択する必要がありますか?

このオプションを有効にすると、ソース データベース上の複数のテーブルにまたがるトランザクションは、常に 1 つのトランザクションでコピー先データベースにレプリケートされます。 ただし、これにより、レプリケーションの全体的なスループットにオーバーヘッドが生じます。 このオプションが無効になっていると、各テーブルは独自のトランザクション境界内で並列接続で宛先に変更をレプリケートするため、レプリケーションの全体的なスループットが向上します。 テーブル間でのトランザクションの一貫性を実現したい場合は、Synapse 専用 SQL プールのトランザクション分離レベルが READ COMMITTED SNAPSHOT ISOLATION であることも確認してください。

Synapse 専用 SQL プールでコピー先テーブルの構造の種類を選択するにはどうすればよいですか?

テーブル構造の種類の 3 つのオプションについては、「テーブルのインデックス作成 - Azure Synapse Analytics | Microsoft Docs」を参照して確認できます。 クラスター化列ストア インデックスを選択すると、最大長のデータ型 (たとえば、VARCHAR(MAX)) はサポートされません。

ランディング ゾーン内のデータをクリーンアップする必要がありますか?

いいえ。 リンクが継続的に実行されている限り、約 24 時間後にコミットされたファイルを削除するバックグラウンド スレッドがあります。 リンクが停止すると、ランディング ゾーン フォルダー全体が削除されます。

SQL 用 Azure Synapse Link は、次のリージョンで利用できます。

領域 リージョン
アジア太平洋 東アジア
東南アジア
オーストラリア オーストラリア東部
オーストラリア南東部
Azure Government US Gov アリゾナ
US Gov テキサス
US Gov バージニア州
ブラジル ブラジル南部
Canada カナダ中部
カナダ東部
中国 中国東部 2
China East 3
中国北部 2
China North 3
ヨーロッパ 北ヨーロッパ
西ヨーロッパ
フランス フランス中部
フランス南部
ドイツ ドイツ中西部
インド インド中部
インド南部
日本 東日本
西日本
韓国 韓国中部
ノルウェー ノルウェー東部
カタール カタール中部
スウェーデン スウェーデン中部
スイス スイス北部
スイス西部
アラブ首長国連邦 アラブ首長国連邦北部
イギリス 英国南部
英国西部
United States 米国中部
米国東部
米国東部 2
米国中北部
米国中南部
米国中西部
米国西部
米国西部 2
米国西部 3

ランディング ゾーンはどこにありますか?

Azure SQL Database の場合、ランディング ゾーンはフル マネージドであり、ターゲット Azure Synapse Analytics ワークスペースと同じリージョンに配置されます。 SQL Server 2022 の場合、ランディング ゾーンはカスタマー マネージドであり、好きな場所に配置できます。

ランディング ゾーンに適用される暗号化の型は何ですか?

Azure SQL Database の場合、ランディング ゾーンはフル マネージドであり、ターゲット Azure Synapse Analytics ワークスペースと同じキー (プラットフォームマネージドまたはカスタマー マネージド) で暗号化されます。 SQL Server 2022 の場合、ランディング ゾーンはカスタマー マネージドであり、プラットフォームマネージド キーまたはカスタマー マネージド キーで暗号化できます。

ソース テーブル内のすべてのレコードを更新しました。 専用 SQL プールに対してクエリを実行すると、すべてのデータが消失しました。 クエリを再実行し、すべてのデータが更新された状態で元に戻りました。 なぜこのようになるのですか?

インジェスト サービスは、更新を削除として処理し、その後に挿入 (すべて同じトランザクション内) を処理します。 既定では、専用 SQL プールは READ UNCOMMITTED モードで実行されます。これにより、トランザクションがコミットされる前に変更を確認できます。 これらのインプロセス変更が表示されないようにするには、READ COMMITTED SNAPSHOT ISOLATION を有効にします。

ソース データベースに追加された新しいテーブルは、リンク接続に自動的に追加されますか?

いいえ。 新しいテーブルを追加するには、Azure Synapse Analytics 環境内のリンク接続を編集する必要があります。 実行中の接続にテーブルを追加するには、それを停止せずに行います。リンク接続に変更を発行すると、新しいテーブルがレプリケーションに含まれます。

Azure SQL Database と SQL Server 2022 から Azure Synapse Analytics 専用 SQL プールにレプリケートされたデータの待機時間は何ですか?

待機時間 SLA は公開されていません。 待機時間が長い場合は、リンク接続に割り当てられたコアの数、ターゲット専用 SQL プールのサイズを調整したり、ワークロードに合わせて書き込み構成のトランザクション整合性を調整したりできます。

ランディング ゾーン データに使用される形式は何ですか? 他の目的で使用できますか?

ランディング ゾーンは一時的なデータ ストアであり、Azure Synapse Link for SQL 以外の目的でそのデータの使用はサポートされていません。

Azure Synapse Link for SQL では、プッシュ モデルを使用します。このモデルでは、ソース データベースがランディング ゾーンにデータを書き込み、インジェスト サービスによってターゲット専用 SQL プールに移動します。これは、継続的に実行できる (ほぼリアルタイムのデータ処理を提供する) かスケジュール モードです。 コピー アクティビティはプル モデルを使用します。この場合、データはソース データベースから照会され、スケジュールに基づいてターゲットの場所に書き込まれます。

この制限は、ページ上のデータに対してのみ適用されます。 オフページ データの場合、7,500 バイトの制限に対してカウントされるのは、オフページ データへの 24 バイト ポインターだけです。

この機能を有効にするために、Azure SQL Database および SQL Server 2022 エンジンに新しい変更フィード プロセッサが統合されました。

ランディング ゾーンのユーザー マネージド ストレージ アカウントに対して SAS の有効期限が切れた場合は、ALTER DATABASE SCOPED CREDENTIAL を使用して、新しい SAS のデータベース資格情報を更新します。

Azure Synapse ワークスペースが削除された場合、Azure SQL Database はランディング ゾーンから Azure Synapse へのデータ レプリケーションを停止します。 システム ストアド プロシージャ sp_change_feed_drop_table_group が自動的に呼び出され、ランディング ゾーンのストレージ アカウントが管理されて、自動的にクリーンアップされます。 これが失敗した場合は、sys.dm_change_feed_errors で SynapseGatewayClient からエラー 22739 が返される可能性があります。 この場合は、sp_change_feed_drop_table_group を使用して changefeed テーブル グループを手動で削除できます。

SQL Server では、ランディング ゾーンのストレージ アカウントはユーザー管理であるため、データは引き続きランディング ゾーンに発行されます。 sp_change_feed_drop_table_group を使用して関連するテーブル グループを削除し、ランディング ゾーンのストレージ アカウントを手動で削除して、Azure Synapse Link を無効にする必要があります。

SQL Server では、ランディング ゾーンのストレージ アカウントはユーザー管理です。 ランディング ゾーン ストレージ アカウントにアクセスできなくなった場合は、sys.dm_change_feed_errors 内にエラーが表示されます。 sp_change_feed_drop_table_group で関連するテーブル グループを削除して、Azure Synapse Link を無効にする必要があります。