Amazon Redshift との Aurora ゼロ ETL 統合での作業 - Amazon Aurora

Amazon Redshift との Aurora ゼロ ETL 統合での作業

Amazon Redshift との Aurora ゼロ ETL 統合では、Aurora からの数ペタバイトのトランザクションデータに対して Amazon Redshift を使用して、ほぼリアルタイムの分析と機械学習 (ML) が可能です。これは、トランザクションデータを Aurora DB クラスターに書き込んだ後に Amazon Redshift で利用できるようにするためのフルマネージドソリューションです。抽出、変換、およびロード (ETL) は、複数のソースからのデータを大規模な中央リポジトリにまとめるプロセスです。

ゼロ ETL 統合では、データ更新が書き込まれてからすぐに Aurora DB クラスターのデータが Amazon Redshift でほぼリアルタイムで利用できます。データが Amazon Redshift に格納されると、機械学習、マテリアライズドビュー、データ共有、複数のデータストアやデータレイクへのフェデレーションアクセス、Amazon SageMaker、Amazon QuickSight、その他の AWS のサービス との統合といった Amazon Redshift の組み込み機能を使用して、分析、ML、AI のワークロードを強化できます。

ゼロ ETL 統合を作成するには、の単一の Aurora DB クラスターソースとして指定し、データウェアハウスをターゲットとして指定します。統合では、ソースデータベースからターゲットデータウェアハウスにデータがレプリケートされます。

次の図は、この機能を示しています。


            ゼロ ETL 統合

統合は、データパイプラインの正常性をモニタリングし、可能な場合は問題から回復します。複数の の Aurora DB クラスターから単一の Amazon Redshift 名前空間に統合を作成できるため、複数のアプリケーションにわたってインサイトを引き出すことができます。

ゼロ ETL 統合の料金の詳細については、Amazon Aurora の料金および「Amazon Redshift の料金」を参照してください。

利点

Amazon Redshift との Aurora ゼロ ETL 統合には、主に次のような利点があります。

  • 複数のデータソースから総合的なインサイトを引き出すのに役立ちます。

  • 抽出、変換、ロード (ETL) 操作を実行する複雑なデータパイプラインを構築して管理する必要がなくなります。ゼロ ETL 統合は、パイプラインのプロビジョニングと管理を顧客に代わって行うことで、パイプラインの構築と管理に伴う課題を排除します。

  • 運用上の負担とコストを削減し、アプリケーションの改善に集中できます。

  • Amazon Redshift の分析機能と ML 機能を活用して、トランザクションデータやその他のデータからインサイトを引き出し、重要で時間的制約のあるイベントに効果的に対応できます。

主要なコンセプト

ゼロ ETL 統合を始める際には、以下の概念を検討してください。

Integration

Aurora DB クラスターから Amazon Redshift データウェアハウスにトランザクションデータとスキーマを自動的に複製する、フルマネージドデータパイプライン。

ソース DB クラスター

データがレプリケートされる Aurora DB クラスターAurora MySQL では、プロビジョニングされた DB インスタンスまたは Aurora Serverless v2 DB インスタンスをソースとして使用する DB クラスターを指定できます。Aurora PostgreSQL プレビューでは、プロビジョニングされた DB インスタンスを使用するクラスターのみを指定できます。複数のソースの DB クラスターを同じターゲットに書き込むことができます。ソース DB クラスターの設定には、「プレビューの制限事項制限事項」で概説しているいくつかの制限があります。

ターゲットデータウェアハウス

データがレプリケートされる Amazon Redshift データウェアハウス。データウェアハウスには、プロビジョニングされたクラスターデータウェアハウスとサーバーレスデータウェアハウスの 2 種類があります。プロビジョニングされたクラスターデータウェアハウスは、ノードと呼ばれるコンピューティングリソースのコレクションであり、クラスターと呼ばれるグループに編成されています。サーバーレスデータウェアハウスは、コンピューティングリソースを格納するワークグループと、データベースオブジェクトとユーザーを収容する名前空間で構成されています。どちらのデータウェアハウスも Amazon Redshift エンジンを実行し、1 つ以上のデータベースを含んでいます。

詳細については、「Amazon Redshift デベロッパーガイド」の「データウェアハウスのシステムアーキテクチャ」を参照してください。

プレビューの制限事項制限事項

Amazon Redshift との Aurora ゼロ ETL 統合には、以下の制限が適用されます。

一般的な制限事項

  • ソース DB クラスターは、ターゲット Amazon Redshift データウェアハウスと同じリージョンにある必要があります。

  • クラスターに既存の統合がある場合、DB クラスターやそのインスタンスの名前を変更することはできません。

  • 既存の統合がある DB クラスターは削除できません。まず、関連する統合をすべて削除する必要があります。

  • ソース Aurora DB クラスターを停止すると、クラスターを再開するまで、最後のいくつかのトランザクションがターゲットデータウェアハウスにレプリケートされない場合があります。

  • ゼロ ETL 統合は現在、データのフィルタリングをサポートしていません。

  • クラスターがブルー/グリーンデプロイのソースである場合、ブルー環境とグリーン環境の切り替え中に既存のゼロ ETL 統合を置くことはできません。最初に統合を削除してから切り替えて、再作成する必要があります。

  • ソースクラスターが Aurora グローバルデータベースのプライマリ DB クラスターであり、セカンダリクラスターの 1 つにフェールオーバーすると、統合は非アクティブになります。統合を手動で削除して再作成する必要があります。

  • 初めて統合を作成するとき、またはテーブルを再同期するとき、ソースデータベースのサイズによっては、ソースからターゲットへのデータシードに 20 ~ 25 分以上かかる場合があります。この遅延により、レプリカラグが長くなる可能性があります。

  • 一部のデータ型はサポートされていません。サポートされているデータ型のリストについては、「 データベースのデータタイプの違い」を参照してください。

  • 定義済みのテーブル更新を伴う外部キー参照はサポートされていません。具体的には、ON DELETE および ON UPDATE ルールは、CASCADESET NULL、および SET DEFAULT アクションではサポートされていません。別のテーブルへの参照を含むテーブルを作成または更新しようとすると、テーブルは失敗状態になります。

  • XA トランザクションはサポートされていません。

  • オブジェクト識別子 (データベース名、テーブル名、列名などを含む) には、英数字、数字、$、_ (アンダースコア) のみを使用できます。

Aurora MySQL の制限事項

  • ソース DB クラスターは Aurora MySQL バージョン 3.05 (MySQL 8.0.32 と互換) 以降を実行している必要があります。

  • ゼロ ETL 統合では、MySQL バイナリロギング (binlog) を利用して継続的なデータ変更をキャプチャします。バイナリログベースのデータフィルタリングは、ソースデータベースとターゲットデータベースの間でデータに不整合が発生する可能性があるため、使用しないことをお勧めします。

  • Aurora MySQL システムテーブル、一時テーブル、ビューは Amazon Redshift にレプリケートされません。

  • ゼロ ETL 統合は、InnoDB ストレージエンジンを使用するように設定されたデータベースでのみサポートされています。

  • ALTER TABLE パーティション操作では、Aurora から Amazon Redshift にデータをリロードするためにテーブルが再同期されます。再同期中は、テーブルをクエリすることはできません。

Aurora PostgreSQL プレビューの制限事項

重要

Aurora PostgreSQL の Amazon Redshift とのゼロ ETL 統合はプレビューリリースです。ドキュメントと機能はどちらも変更されることがあります。この機能については、テスト環境のみで使用でき、本番環境では使用できません。プレビューの利用規約については、「AWS のサービス条件」の「ベータ版とプレビュー」を参照してください。

  • ソース DB クラスターは Aurora PostgreSQL を実行している必要があります (PostgreSQL 15.4 およびゼロ ETL サポートと互換性があります)

  • Aurora PostgreSQL のゼロ ETL 統合を作成および管理できるのは、米国東部 (オハイオ) (us-east-2) AWS リージョン の Amazon RDS データベースプレビュー環境のみです。プレビュー環境を使用して、PostgreSQL データベースエンジンソフトウェアのベータ、リリース候補、および初期の本番バージョンをテストできます。

  • Aurora PostgreSQL の統合の作成と管理は、AWS Management Console を使用してのみ行えます。AWS Command Line Interface (2)、Amazon RDS API、または任意の AWS SDK を使用することはできません。

  • ソース DB クラスターを作成するときは、選択するパラメータグループに、必要な DB クラスターパラメータ値が既に設定されている必要があります。後で新しいパラメータグループを作成してクラスターに関連付けることはできません。必要なパラメータのリストについては、ステップ 1: カスタム DB クラスターのパラメータグループを作成する を参照してください。

  • 統合は、作成した後で変更することはできません。特定の設定を変更する必要がある場合は、統合を削除して再作成する必要があります。

  • 現在、統合のソースである Aurora PostgreSQL DB クラスターは、論理レプリケーションデータのガベージコレクションを実行しません。

  • ソース Aurora PostgreSQL DB クラスター内で作成されるすべてのデータベースは、UTF-8 エンコーディングを使用する必要があります。

  • 列名には、カンマ (,)、セミコロン (;)、括弧 ()、中括弧 { }、改行 (\n)、タブ (\t)、等号 (=)、スペースの文字を含めることはできません。

  • Aurora PostgreSQL とのゼロ ETL 統合では、以下はサポートされていません。

    • Aurora Serverless v2 DB インスタンス。ソース DB クラスターは、プロビジョニングされた DB インスタンスを使用する必要があります。

    • カスタムデータ型、または拡張機能によって作成されたデータ型。

    • ソース DB クラスターのサブトランザクション

    • ソース DB クラスター内のスキーマまたはデータベースの名前の変更。

    • DB クラスタースナップショットからの復元、または Aurora クローンを使用したソース DB クラスターの作成。既存のデータをプレビュークラスターに取り込む場合は、pg_dump または pg_restore ユーティリティを使用する必要があります。

    • ソース DB クラスターのライターインスタンスでの論理レプリケーションスロットの作成。

    • オーバーサイズ属性ストレージ技術 (TOAST) を必要とする大きなフィールド値。

    • ALTER TABLE パーティション操作。これらの操作により、テーブルが再同期され、最終的に Failed 状態になる可能性があります。テーブルに障害が発生した場合は、テーブルを削除して再作成する必要があります。

Amazon Redshift の制限事項

ゼロ ETL 統合に関連する Amazon Redshift の制限の一覧については、「Amazon Redshift 管理ガイド」の「考慮事項」を参照してください。

クォータ

お客様のアカウントには、Amazon Redshift との Aurora ゼロ ETL 統合に関連する以下のクォータが設定されています。特に指定がない限り、各クォータはリージョンあたりです。

名前 デフォルト値 説明
統合 100 AWS アカウント 内の統合の総数。
ターゲットデータウェアハウスあたりの統合数 50 1 つのターゲット Amazon Redshift データウェアハウスにデータを送信する統合の数。
ソースクラスターごとの統合 Aurora MySQL では 5、Aurora PostgreSQL では 1 単一のソース DB クラスターからデータを送信する統合の数。

さらに、Amazon Redshift は、各 DB インスタンスまたはクラスターノードで使用できるテーブルの数に一定の制限を設けています。詳細については、「Amazon Redshift 管理ガイド」の「Amazon Redshift のクォータと制限」を参照してください。

サポートされるリージョン

Amazon Redshift との Aurora ゼロ ETL 統合は、AWS リージョン のサブセットで利用できます。サポートされているリージョンのリストについては「Amazon Redshift とのゼロ ETL 統合」を参照してください。