リストの自動複製¶
プロバイダーであれば、リストにCross-Cloud Auto-Fulfillment (自動フルフィルメント)を使用することで、手動でデータを複製することなく、データ製品を自動的に他のSnowflakeリージョンに複製することができます。
リストで自動複製が有効になっている場合、Snowflakeはデータ製品を必要に応じてコンシューマーリージョンに自動複製します。データ製品とは、リストに添付されるシェアやアプリケーションパッケージのことです。
自動複製を使用すると、データ製品を手動で複製したり、リストのリクエストを承認したりする必要がなくなり、コンシューマーはリストにすばやくアクセスできるようになります。
注釈
Snowflake Native App with Snowpark Container Services のクロスクラウド自動複製の使用は、Amazon Web Services(AWS)とMicrosoft Azureでのみサポートされています。詳細については、 Snowflake Native Apps Frameworkの制限事項の理解 をご参照ください。
自動フルフィルメントについて¶
自動フルフィルメントにより、リストで選択した可用性とアクセスオプションに基づいて、サポートされているSnowflakeリージョンでデータ製品を提供することができます。
リストがドラフトまたは公開状態の場合は、自動複製を構成して有効にすることができます。リストの自動複製が有効になっている場合、Snowflakeは必要に応じて製品をコンシューマーリージョンに自動で複製します。
データ製品を他のリージョンで使用できるようにする方法は、データ製品とコンシューマーがリストにアクセスする方法に応じて異なります。
データ製品がアプリケーションパッケージの場合は、自動複製を使用してデータ製品を他のリージョンで使用できるようにします。
データ製品が共有の場合は、ほとんどのケースで自動複製を使用します。
無料または限定トライアルリストでは、 Snowflake Marketplace クロスクラウド自動フルフィルメントを使用するか、 データを手動で複製 できます。
有料リストの場合は、自動複製を使用します。
特定のコンシューマーアカウントと共有されるすべてのリストの場合、 Snowsight はターゲットアカウントが別のリージョンにあるかどうかを自動的に検出し、自動複製を有効にします。プライベートリストを他のリージョンに手動で複製することはできません。
データ製品を他のリージョンで利用できるようにする場合は、追加コストが発生します。 自動フルフィルメントコスト をご参照ください。
自動フルフィルメントの仕組み¶
プロバイダーとして、リストにCross-Cloud Auto-Fulfillmentをセットアップすると、Snowflakeは セキュア共有領域 (SSA) のプロビジョニングとリモートリージョンへのデータ製品の自動フルフィルメント を管理します。SSA はSnowflakeにより管理されています。データ製品がすでにリモートリージョンに存在する場合、そのリージョンのコンシューマーは即座にデータ製品を入手できます。
各リストには、シェアであれアプリケーション・パッケージであれ、データ製品が関連付けられています。そのデータ製品には、1つまたは複数のデータベースのオブジェクトと、アプリケーションパッケージのアプリケーションロジックが含まれています。データ製品がリモートリージョンに自動複製される正確なタイミングは、リストをどのように利用可能にするかによって異なります。
プライベートリストは、指定されたコンシューマーがリストを取得した後に自動複製されます。
Snowflake Marketplace で共有されたパブリックリストは、特定のリージョンのコンシューマーがリストを取得した後に自動複製されます。
お客様のデータ製品が初めて新しいリージョンに自動充填されると、そのリージョンの SSA に転送されます。複製とは異なり、自動複製は継続的に同期されたレプリカを維持しません。自動複製は FULL_DATABASE または SUBDB の設定で構成できます。FULL_DATABASE はデータベース内のすべてのオブジェクトで利用可能にしますが、継続的な同期は行いません。SUBDB は、選択したオブジェクトをオンデマンドで利用できるようにします。複製では、 FULL_DATABASE が定期的に同期されたコピーを保証する一方で、 SUB_DATABASE が特定のコンポーネントを同期します。
複数のリストで同じデータベースを使用することができますが、データベースは新しいリージョンに一度だけ自動複製されます。
注釈
Business Critical Edition(BCE)の場合、共有データの扱いは VPS のような高セキュリティのデプロイメントとは異なります。BCE はリージョン用に個別の SSA を作成する必要はありませんが、Tri-Secret Secure暗号化などの機能により、厳格なデータセキュリティとコンプライアンスを実施しています。
Virtual Private Snowflake(VPS)や政府機関専用のSnowflake環境などのデプロイメントには、デプロイメントごとに個別の安全な共有領域(SSA)があります。これにより、自動複製は、これらの環境特有の厳しいセキュリティ要件やデータ分離要件に準拠していることが保証されます。
データ自動フルフィルメントの仕組み¶
リストに自動フルフィルメントをセットアップすると、データ商品の更新間隔を構成できます。
リージョンの SSA にデータ商品が最初に自動フルフィルメント された後、構成されたデータリフレッシュに基づいて、データ商品の変更がアカウントから同期されます。
データ更新タイプ |
説明 |
---|---|
トリガーベースのデータ更新 |
プロバイダーは、 SYSTEM$TRIGGER_LISTING_REFRESH を使用してオンデマンドのデータ更新をトリガーできるため、コンシューマーは最新の情報を確実に受け取ることができます。 Snowflakeでは、アップストリームの抽出-変換-ロード (ETL) パイプラインプロセスが完了し、データの準備ができたときに複製をトリガーしたい場合に、トリガーベースのデータリフレッシュを使用することを推奨しています。例えば、金融機関に株式分析を提供するデータプロバイダーの場合、上流の ETL パイプラインで新しいデータセットが更新されると同時に、すべてのアナリストに更新をトリガーすることができます。 注: この機能は SQL でのみ利用可能です。 |
アプリケーションパッケージのトリガーベースのリフレッシュ |
リストのデータ製品がアプリケーション・パッケージの場合、プロバイダーは SYSTEM$TRIGGER_LISTING_REFRESH を、アプリケーション・パッケージのオンデマンド・リフレッシュをトリガーするようにセットできます。ただし、プロバイダーはアプリケーション・パッケージをリフレッシュする必要があるたびにこの関数を実行する必要があります。 リリースディレクティブが変更されるたびにアプリケーションパッケージが更新されるように構成するには、 ALTER APPLICATION PACKAGE コマンドのLISTING_AUTO_REFRESH 句を使用します。 |
インターバルベースのデータ更新 |
プロバイダーは、リストのすべてのコンシューマーに対して、1分から8日までの期間で、間隔ベースのデータ更新を確立することができます。データベースに関連付けられた各リストは、同じ更新間隔で動作します。 インターバル・ベースのデータ更新構成は、あらかじめ定義された間隔で更新が必要な場合に推奨されます。例えば、毎週データセットを更新するプロバイダーは、インターバル・ベースのリフレッシュを使用して、同じスケジュールでデータベースを更新することができます。リフレッシュが完了するごとに、ケイデンスに従って次のリフレッシュがトリガーされます。詳細については アカウントレベルの更新間隔を設定する をご参照ください。 注: この機能は、 Snowsight の SQL または Provider Studio を使用して利用可能です。 |
スケジュールベースのデータ更新 |
プロバイダーは、リストのすべてのコンシューマーにわたって、データ更新のタイムスタンプとスケジュールを設定できます。データベースを利用するすべてのリストは、同じ更新スケジュールに従います。 リスト更新を特定のタイムスタンプとスケジュールで行う必要がある大文字と小文字の使用には、スケジュールベースのデータ更新をお勧めします。例えば、データプロバイダーは、すべてのコンシューマーにリフレッシュが利用可能になるタイミングを予測可能なタイムスタンプで提供する必要があります。 インターバル・ベースとスケジュール・ベースのデータ・リフレッシュを同時に使用することはできません。両方セットされている場合、一方が他方を優先します。例えば、cron式がスケジュール更新のためにセットアップされ、すでに更新間隔が設定されている場合、スケジュール更新をサポートするために上書きされます。詳細については auto_fulfillment をご参照ください。 注: この機能は、 Snowsight の SQL または Provider Studio を使用して利用可能です。 |
自動複製に関する考慮事項¶
リストに自動複製を使用する場合は、以下を考慮します。
AWS Marketplace、 GCP Marketplace、またはAzure Marketplaceを使用してSnowflakeにサインアップした場合は、そのようなクラウドでのみアカウントを作成して SSAs を確保できます。現在のクラウドサービスリージョン外にリストを複製することはできません。
複製されるデータ製品のサイズによっては、データ製品をコンシューマーに提供するまでに時間のかかる場合があります。データ製品のサイズも自動複製のコストに影響を与える可能性があります。コストの詳細については、 自動フルフィルメントコスト をご参照ください。
オブジェクトレベルモード(SUBDB)がデフォルトで使用されます。
リストがすでにフルデータベースモード(FULL_DATABASE)になっているデータベースにあるオブジェクトを使用する場合、Snowsightに警告が表示され、データベースはフルデータベースモードのままになります。
Tri-Secret Secure を使用する場合は、 Snowflakeサポート に連絡して、自動フルフィルメントに使用する安全な共有領域でTri-Secret Secureを有効にする必要があります。
Tri-Secret Secureでは、クエリ結果はプロバイダーのキー、Snowflakeのキー、コンシューマーのキーを1つずつ使用して暗号化されます。それぞれのキーは独立してアクセスを管理します。キーが取り消されると、その所有者だけがアクセス権を失います。例えば、プロバイダーキーを取り消したとしても、コンシューマーがすでに取得されたデータにアクセスすることは妨げられません。
注釈
自動複製では、データ製品のサイズに 10TB の制限を設けています。サイジングエラーが発生した場合は、 データベースが10テラバイトを超える場合 をご参照ください。
コストへの影響を評価した後で Snowflakeサポート に連絡し、サイズ制限を増やすことができます。