Amazon Redshift でのデータの共有 - Amazon Redshift

Amazon Redshift でのデータの共有

Amazon Redshift では、Amazon Redshift クラスター間で、または他の AWS サービスとの間で安全にデータを共有できます。データ共有を使用すると、コピーを作成したり移動したりすることなく、ライブデータを共有できます。データベース管理者とデータエンジニアは、データ共有を使用して、データの制御を維持しながら、分析目的でデータへの安全で読み取り専用のアクセスを提供できます。データアナリスト、ビジネスインテリジェンスの専門家、およびデータサイエンティストは、共有データを活用して、データを複製または移動することなくインサイトを得ることができます。一般的なユースケースには、パートナーとのデータ共有、機能横断的な分析の有効化、組織内のデータの民主化の促進などがあります。以下のセクションでは、Amazon Redshift でのデータ共有の設定と管理の詳細について説明します。

Amazon Redshift のデータ共有により、データを手動で移動またはコピーすることなく、Amazon Redshift クラスター、ワークグループ、AWS アカウント、および AWS リージョン 間で、ライブデータへのアクセスを安全に共有できます。データはライブであるため、すべてのユーザーは更新後すぐに、一貫性のある最新情報をAmazon Redshift で確認できます。

プロビジョニングされたクラスター、サーバーレスワークグループ、アベイラビリティーゾーン、AWS アカウント および AWS リージョン の間でデータを共有できます。クラスタータイプ間およびプロビジョニングされたクラスターとサーバーレス間で共有できます。

読み取りと書き込みの両方のデータベースオブジェクトは、同一の AWS アカウント 内の Amazon Redshift クラスターや Amazon Redshift Serverless ワークグループ間で、または異なる AWS アカウント の間で共有できます。リージョン間でデータを書き込むこともできます。テーブルごとに SELECT、INSERT、UPDATE などのアクセス許可を付与したり、スキーマごとに USAGE と CREATE などのアクセス許可を付与できます。データは、書き込みトランザクションがコミットされるとすぐにライブになり、すべてのウェアハウスで利用できるようになります。

Amazon Redshift のデータ共有ユースケース

Amazon Redshift のデータ共有は、次のユースケースで特に便利です。

  • さまざまな種類のビジネスクリティカルなワークロードのサポート – 複数のビジネスインテリジェンス (BI) クラスターまたは分析クラスターとデータを共有する一元的な抽出、変換、およびロード (ETL) クラスターを使用します。このアプローチは、個々のワークロードに対して読み込みワークロードの分離とチャージバックを提供します。料金とパフォーマンスのワークロード固有の要件に応じて、個々のワークロードコンピューティングのサイズとスケーリングを行うことができます。

  • クロスグループコラボレーションの有効化 – より広範な分析、データサイエンス、製品間の影響分析のために、チームやビジネスグループ間でシームレスなコラボレーションを実現します。

  • サービスとしてのデータの提供 – 組織全体でデータをサービスとして共有できます。

  • 環境間でのデータの共有 – 開発、テスト、本番稼働環境間でデータを共有します。さまざまなレベルの詳細なデータを共有することで、チームの俊敏性を向上させることができます。

  • Amazon Redshift 内のデータにアクセスするライセンスを供与する – 顧客が数分で検索、サブスクライブ、クエリできる AWS Data Exchange カタログに Amazon Redshift データセットを出品します。

データ共有の書き込みアクセスのユースケース

書き込み用のデータ共有には、重要なユースケースがいくつかあります。

  • プロデューサーのビジネスソースデータを更新する — データをサービスとして組織全体で共有できますが、コンシューマーはソースデータに対してアクションを実行することもできます。例えば、最新の値を伝えたり、データの受信を確認したりできます。これらは考えられるビジネスユースケースのほんの一部です。

  • プロデューサーに追加レコードを挿入する — コンシューマーは元のソースデータにレコードを追加できます。これらには、必要に応じてコンシューマーからのものとしてマークできます。

データ共有に対する書き込み操作の具体的な実行方法については、「Sharing write access to data」を参照してください。

Amazon Redshift の異なるレベルでのデータ共有

Amazon Redshift を使用すると、さまざまなレベルでデータを共有できます。これらのレベルには、データベース、スキーマ、テーブル、ビュー (通常ビュー、遅延バインディングビュー、マテリアライズドビューを含む)、および SQL ユーザー定義関数 (UDF) が含まれます。特定のデータベースに対して複数のデータ共有を作成できます。データ共有には、共有が作成されたデータベース内の複数のスキーマのオブジェクトを含めることができます。

データ共有にこの柔軟性を加えることで、詳細なアクセスコントロールを実現します。このコントロールは、Amazon Redshift データへのアクセスを必要とするさまざまなユーザーやビジネスに合わせて調整できます。

Amazon Redshift でのデータ共有の一貫性の管理

Amazon Redshift は、すべてのプロデューサクラスターおよびコンシューマークラスターでトランザクションの一貫性を提供し、データの最新で一貫性のあるビューをすべてのコンシューマーと共有します。

プロデューサークラスターのデータを継続的に更新できます。トランザクション内のコンシューマークラスターに対するすべてのクエリは、共有データの同じ状態を読み取ります。Amazon Redshift は、プロデューサークラスターでの別のトランザクションによって変更されたデータで、コンシューマークラスターでのトランザクションの開始後にコミットされたデータを考慮しません。プロデューサークラスターでデータ変更がコミットされた後、コンシューマークラスターでの新しいトランザクションは更新されたデータをすぐにクエリできます。

強力な一貫性により、データの共有中、無効な結果が含まれる可能性がある忠実度の低いビジネスレポートのリスクが排除されます。この要素は、財務分析や、機械学習モデルのトレーニングに使用されるデータセットを準備するために結果を使用する場合に特に重要です。