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 クラスターをソースとして指定し、Amazon Redshift データウェアハウスをターゲットとして指定します。統合では、ソースデータベースからターゲットデータウェアハウスにデータがレプリケートされます。
次の図は、この機能を示しています。
統合は、データパイプラインの正常性をモニタリングし、可能な場合は問題から回復します。複数の の Aurora DB クラスターから単一の Amazon Redshift 名前空間に統合を作成できるため、複数のアプリケーションにわたってインサイトを引き出すことができます。
ゼロ ETL 統合の料金の詳細については、「Amazon Aurora の料金
トピック
- 利点
- 主要なコンセプト
- 制限事項
- クォータ
- サポートされるリージョン
- Amazon Redshift との Aurora ゼロ ETL 統合の開始方法
- Amazon Redshift との Amazon ゼロ ETL 統合の作成
- Amazon Redshift との Aurora ゼロ ETL 統合でのデータフィルタリング
- ソース Aurora DB クラスターへのデータの追加と、Amazon Redshift でのクエリ
- Amazon Redshift との Aurora ゼロ ETL 統合の表示と監視
- Amazon Redshift との Aurora ゼロ ETL 統合の変更
- Amazon Redshift との Amazon ゼロ ETL 統合の削除
- Aurora ゼロ ETL 統合のトラブルシューティング
利点
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 インスタンスを使用するクラスターのみを指定できます。
- ターゲットデータウェアハウス
-
データがレプリケートされる Amazon Redshift データウェアハウス。データウェアハウスには、プロビジョニングされたクラスターデータウェアハウスとサーバーレスデータウェアハウスの 2 種類があります。プロビジョニングされたクラスターデータウェアハウスは、ノードと呼ばれるコンピューティングリソースのコレクションであり、クラスターと呼ばれるグループに編成されています。サーバーレスデータウェアハウスは、コンピューティングリソースを格納するワークグループと、データベースオブジェクトとユーザーを収容する名前空間で構成されています。どちらのデータウェアハウスも Amazon Redshift エンジンを実行し、1 つ以上のデータベースを含んでいます。
複数のソースの DB クラスターを同じターゲットに書き込むことができます。
詳細については、「Amazon Redshift デベロッパーガイド」の「データウェアハウスのシステムアーキテクチャ」を参照してください。
制限事項
Amazon Redshift との Aurora ゼロ ETL 統合には、以下の制限が適用されます。
一般的な制限事項
-
ソース DB クラスターは、ターゲット Amazon Redshift データウェアハウスと同じリージョンにある必要があります。
-
クラスターに既存の統合がある場合、DB クラスターやそのインスタンスの名前を変更することはできません。
-
同じソースデータベースとターゲットデータベースの間に複数の統合を作成することはできません。
-
既存の統合がある DB クラスターは削除できません。まず、関連する統合をすべて削除する必要があります。
-
ソース Aurora DB クラスターを停止すると、クラスターを再開するまで、最後のいくつかのトランザクションがターゲットデータウェアハウスにレプリケートされない場合があります。
-
クラスターがブルー/グリーンデプロイのソースである場合、ブルー環境とグリーン環境の切り替え中に既存のゼロ ETL 統合を置くことはできません。最初に統合を削除してから切り替えて、再作成する必要があります。
-
DB クラスターが統合のソースになるには、1 つ以上の DB インスタンスが含まれている必要があります。
-
ソースクラスターが Aurora グローバルデータベースのプライマリ DB クラスターであり、セカンダリクラスターの 1 つにフェールオーバーすると、統合は非アクティブになります。統合を手動で削除して再作成する必要があります。
-
統合を作成中のソースデータベースで別の統合を作成することはできません。
-
初めて統合を作成するとき、またはテーブルを再同期するとき、ソースデータベースのサイズによっては、ソースからターゲットへのデータシードに 20 ~ 25 分以上かかる場合があります。この遅延により、レプリカラグが長くなる可能性があります。
-
一部のデータ型はサポートされていません。詳細については、「 データベースのデータタイプの違い」を参照してください。
-
XA トランザクションはサポートされていません。
-
オブジェクト識別子 (データベース名、テーブル名、列名などを含む) には、英数字、数字、$、_ (アンダースコア) のみを使用できます。
-
システムテーブル、一時テーブル、ビューは Amazon Redshift にレプリケートされません。
Aurora MySQL の制限事項
-
ソース DB クラスターは、サポートされているバージョンの Aurora MySQL を実行している必要があります。サポートされているバージョンのリストについては、「Amazon Redshift とのゼロ ETL 統合でサポートされているリージョンと Aurora DB エンジン」を参照してください。
-
ゼロ ETL 統合では、MySQL バイナリロギング (binlog) を利用して継続的なデータ変更をキャプチャします。バイナリログベースのデータフィルタリングは使用しないでください。ソースとターゲットのデータベース間でデータの不整合が生じる可能性があります。
-
ゼロ ETL 統合は、InnoDB ストレージエンジンを使用するように設定されたデータベースでのみサポートされています。
-
定義済みのテーブル更新を伴う外部キー参照はサポートされていません。具体的には、
ON DELETE
およびON UPDATE
ルールは、CASCADE
、SET NULL
、およびSET DEFAULT
アクションではサポートされていません。別のテーブルへの参照を含むテーブルを作成または更新しようとすると、テーブルは失敗状態になります。 -
ALTER TABLE
パーティション操作では、Aurora から Amazon Redshift にデータをリロードするためにテーブルが再同期されます。再同期中は、テーブルをクエリすることはできません。詳細については、「1 つ以上の Amazon Redshift テーブルを再同期する必要がある」を参照してください。
Aurora PostgreSQL プレビューの制限事項
重要
プレビュー終了: Amazon Redshift との Aurora PostgreSQL ゼロ ETL 統合のプレビューは終了しました。皆様のご参加とフィードバックに感謝します。この機能の可用性と強化に関する今後の更新については追ってお知らせいたします。
-
ソース 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 エンコーディングを使用する必要があります。
-
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 統合でサポートされているリージョンと Aurora DB エンジン」を参照してください。