Amazon RDS ゼロ ETL 統合
Amazon Redshift および Amazon SageMaker との Amazon RDS ゼロ ETL 統合では、RDS からのデータを使用して、ほぼリアルタイムの分析と機械学習 (ML) が可能です。これは、トランザクションデータを RDS データベースに書き込んだ後に分析送信先で利用できるようにするためのフルマネージドソリューションです。抽出、変換、ロード (ETL) は、複数のソースからのデータを大規模な中央のデータウェアハウスにまとめるプロセスです。
ゼロ ETL 統合では、RDS データベースのデータが Amazon Redshift または Amazon SageMaker Lakehouse でほぼリアルタイムで利用できます。データがターゲットデータウェアハウスまたはデータレイクに格納されると、機械学習、マテリアライズドビュー、データ共有、複数のデータストアやデータレイクへのフェデレーションアクセス、および Amazon SageMaker AI、QuickSight、その他の AWS のサービスとの統合といった組み込み機能を使用して、分析、ML、AI のワークロードを強化できます。
ゼロ ETL 統合を作成するには、RDS データベースをソースとして指定し、サポートされたデータウェアハウスやレイクハウスをターゲットとして指定します。統合では、ソースデータベースからターゲットデータウェアハウスやレイクハウスにデータがレプリケートされます。
次の図は、Amazon Redshift とのゼロ ETL 統合のこの機能を示しています。

次の図は、Amazon SageMaker Lakehouse とのゼロ ETL 統合のこの機能を示しています。

統合では、データパイプラインの状態をモニタリングし、可能な場合は問題から回復します。複数の RDS データベースから単一のターゲットデータウェアハウスまたはレイクハウスに統合を作成できるため、複数のアプリケーションにわたってインサイトを引き出すことができます。
トピック
利点
RDS ゼロ ETL 統合には、主に次のような利点があります。
-
複数のデータソースから総合的なインサイトを引き出すのに役立ちます。
-
抽出、変換、ロード (ETL) 操作を実行する複雑なデータパイプラインを構築して管理する必要がなくなります。ゼロ ETL 統合は、パイプラインのプロビジョニングと管理を顧客に代わって行うことで、パイプラインの構築と管理に伴う課題を排除します。
-
運用上の負担とコストを削減し、アプリケーションの改善に集中できます。
-
ターゲット送信先の分析機能と ML 機能を活用して、トランザクションデータやその他のデータからインサイトを引き出し、重要で時間的制約のあるイベントに効果的に対応できます。
主要なコンセプト
ゼロ ETL 統合を始める際には、以下の概念を検討してください。
- Integration
-
RDS データベースからデータウェアハウスまたはカタログにトランザクションデータとスキーマを自動的に複製する、フルマネージドデータパイプライン。
- ソースデータベース
-
データがレプリケートされる RDS データベース。シングル AZ またはマルチ AZ DB インスタンス、あるいはマルチ AZ DB クラスターを指定できます。
- ターゲット
-
データがレプリケートされるデータウェアハウスまたはレイクハウス。データウェアハウスには、プロビジョニングされたクラスターデータウェアハウスとサーバーレスデータウェアハウスの 2 種類があります。プロビジョニングされたクラスターデータウェアハウスは、ノードと呼ばれるコンピューティングリソースのコレクションであり、クラスターと呼ばれるグループに編成されています。サーバーレスデータウェアハウスは、コンピューティングリソースを格納するワークグループと、データベースオブジェクトとユーザーを収容する名前空間で構成されています。どちらのデータウェアハウスも分析エンジンを実行し、1 つ以上のデータベースを含んでいます。
ターゲットレイクハウスは、カタログ、データベース、テーブル、ビューで構成されます。レイクハウスアーキテクチャの詳細については、「Amazon SageMaker Unified Studio ユーザーガイド」の「Amazon SageMaker Lakehouse components」を参照してください。
複数のソースデータベースの を同じターゲットに書き込むことができます。
詳細については、「Amazon Redshift デベロッパーガイド」の「データウェアハウスのシステムアーキテクチャ」を参照してください。
制限
RDS ゼロ ETL 統合には、以下の制限が適用されます。
一般的な制限事項
-
ソースデータベースは、ターゲットと同じリージョンにある必要があります。
-
クラスターに既存の統合がある場合、データベースやそのインスタンスの名前を変更することはできません。
-
同じソースデータベースとターゲットデータベースの間に複数の統合を作成することはできません。
-
既存の統合があるデータベースは削除できません。まず、関連する統合をすべて削除する必要があります。
-
ソースデータベースを停止すると、データベースを再開するまで、最後のいくつかのトランザクションがターゲットにレプリケートされない場合があります。
-
ソースデータベースが停止している場合、統合を削除することはできません。
-
データベースがブルー/グリーンデプロイのソースである場合、ブルー環境とグリーン環境の切り替え中に既存のゼロ ETL 統合を置くことはできません。最初に統合を削除してから切り替えて、再作成する必要があります。
-
統合を作成中のソースデータベースで別の統合を作成することはできません。
-
初めて統合を作成するとき、またはテーブルを再同期するとき、ソースデータベースのサイズによっては、ソースからターゲットへのデータシードに 20 ~ 25 分以上かかる場合があります。この遅延により、レプリカラグが長くなる可能性があります。
-
一部のデータ型はサポートされていません。詳細については、「RDS データベースと Amazon Redshift データベースのデータタイプの違い」を参照してください。
-
システムテーブル、一時テーブル、ビューはターゲットウェアハウスにレプリケートされません。
RDS for MySQL の制限事項
-
ソースデータベースは、サポートされているバージョンの RDS for MySQL を実行している必要があります。サポートされているバージョンのリストについては、「Amazon RDS ゼロ ETL 統合でサポートされているリージョンと DB エンジン」を参照してください。
-
ゼロ ETL 統合では、MySQL バイナリロギング (binlog) を利用して継続的なデータ変更をキャプチャします。バイナリログベースのデータフィルタリングは使用しないでください。ソースとターゲットのデータベース間でデータの不整合が生じる可能性があります。
-
ゼロ ETL 統合は、InnoDB ストレージエンジンを使用するように設定されたデータベースでのみサポートされています。
-
定義済みのテーブル更新を伴う外部キー参照はサポートされていません。具体的には、
ON DELETE
およびON UPDATE
ルールは、CASCADE
、SET NULL
、およびSET DEFAULT
アクションではサポートされていません。別のテーブルへの参照を含むテーブルを作成または更新しようとすると、テーブルは失敗状態になります。 -
ALTER TABLE
パーティション操作では、RDS からターゲットウェアハウスにデータをリロードするためにテーブルが再同期されます。再同期中は、テーブルをクエリすることはできません。詳細については、「1 つ以上の Amazon Redshift テーブルを再同期する必要がある」を参照してください。
Amazon Redshift の制限事項
ゼロ ETL 統合に関連する Amazon Redshift の制限の一覧については、「Amazon Redshift 管理ガイド」の「Amazon Redshift とのゼロ ETL 統合を使用する際の考慮事項」を参照してください。
Amazon SageMaker Lakehouse の制限事項
以下は、Amazon SageMaker Lakehouse のゼロ ETL 統合の制限です。
-
カタログ名の長さは 19 文字に制限されています。
クォータ
お客様のアカウントには、RDS ゼロ ETL 統合に関連する以下のクォータが設定されています。特に指定がない限り、各クォータはリージョンあたりです。
名前 | デフォルト | 説明 |
---|---|---|
統合 | 100 | AWS アカウント 内の統合の総数。 |
ターゲットあたりの統合 | 50 | 1 つのターゲットデータウェアハウスまたはレイクハウスにデータを送信する統合の数。 |
ソースインスタンスごとの統合 | 5 | 単一のソース DB インスタンスからデータを送信する統合の数。 |
さらに、ターゲットウェアハウスは、各 DB インスタンスまたはクラスターノードで使用できるテーブルの数に一定の制限を設けています。Amazon Redshift のクォータと制限の詳細については、「Amazon Redshift 管理ガイド」の「Amazon Redshift のクォータと制限」を参照してください。
サポート対象のリージョン
RDS ゼロ ETL 統合は、AWS リージョンのサブセットで利用できます。サポートされているリージョンのリストについては「Amazon RDS ゼロ ETL 統合でサポートされているリージョンと DB エンジン」を参照してください。