翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
での同種データ移行のソースとしての MongoDB 互換データベースの使用 AWS DMS
MongoDB 互換データベースは、 での同種データ移行のソースとして使用できます AWS DMS。この場合、ソースデータプロバイダーはオンプレミス、Amazon EC2 for MongoDB データベース、または Amazon DocumentDB (MongoDB 互換) データベースにすることができます。
サポートされているデータベースのバージョンについては、「」を参照してくださいDMS 同種データ移行のソースデータプロバイダー。
以下のセクションでは、セルフマネージド MongoDB データベースと AWSマネージド Amazon DocumentDB データベースの特定の設定前提条件について説明します。
トピック
での同種データ移行のソースとしてのセルフマネージド MongoDB データベースの使用 AWS DMS
このセクションでは、オンプレミスまたは Amazon EC2インスタンスでホストされている MongoDB データベースを設定する方法について説明します。
ソース MongoDB データベースのバージョンを確認します。「」の説明に従って、 がソース MongoDB データベースのバージョン AWS DMS をサポートしていることを確認しますDMS 同種データ移行のソースデータプロバイダー。
MongoDB ソースで同種データ移行を実行するには、ルート権限を持つユーザーアカウントを作成するか、移行するデータベースに対するアクセス許可のみを持つユーザーを作成できます。ユーザー作成の詳細については、「」を参照してくださいAWS DMS のソースとして MongoDB を使用する場合に必要なアクセス許可。
継続的なレプリケーションまたは MongoDB CDCで を使用するには、MongoDB オペレーションログ (oplog) へのアクセス AWS DMS が必要です。詳細については、「CDC 用 MongoDB レプリカセットの設定」を参照してください。
MongoDB 認証方法の詳細については、「」を参照してくださいAWS DMS のソースとして MongoDB を使用する場合のセキュリティ要件。
MongoDB をソースとして使用する場合、同種データ移行は Amazon DocumentDB がサポートするすべてのデータ型をサポートします。
MongoDB をソースとして Secrets Manager にユーザー認証情報を保存するには、その他のタイプのシークレットタイプを使用してプレーンテキストでユーザー認証情報を指定する必要があります。詳細については、「シークレットを使用して AWS Database Migration Service エンドポイントにアクセスするには」を参照してください。
次のコードサンプルは、プレーンテキストを使用してデータベースシークレットを保存する方法を示しています。
{ "username": "dbuser", "password": "dbpassword" }
での同種データ移行のソースとしての Amazon DocumentDB データベースの使用 AWS DMS
このセクションでは、同種データ移行のソースとして使用する Amazon DocumentDB データベースインスタンスを設定する方法について説明します。
Amazon DocumentDB インスタンスのマスターユーザー名を、 での同種データ移行用の MongoDB 互換ソースデータプロバイダーのユーザーアカウントとして使用します AWS DMS。マスターユーザーアカウントには、 の設定に必要なロールがありますCDC。マスターユーザーアカウント以外のアカウントを使用する場合は、そのアカウントにルートロールが必要です。ルートアカウントとしてのユーザー作成の詳細については、「」を参照してくださいソースとして Amazon DocumentDB を使用するためのアクセス許可の設定。
論理レプリケーションを有効にするには、データベースchange_stream_log_retention_duration
パラメータグループの パラメータをトランザクションワークロードに適した設定に設定します。この静的パラメータを変更するには、DB インスタンスを再起動する必要があります。フルロードのみを含むすべてのタスクタイプのデータ移行を開始する前に、特定のデータベース内のすべてのコレクション、または選択したコレクションに対してのみ Amazon DocumentDB 変更ストリームを有効にします。Amazon DocumentDB の変更ストリームの有効化の詳細については、Amazon DocumentDBデベロッパーガイド」の「変更ストリームの有効化」を参照してください。
注記
AWS DMS は Amazon DocumentDB 変更ストリームを使用して、継続的なレプリケーション中に変更をキャプチャします。がレコードDMSを読み取る前に Amazon DocumentDB が変更ストリームからレコードをフラッシュすると、タスクは失敗します。変更を少なくとも 24 時間保持するように change_stream_log_retention_duration
パラメータを設定することをお勧めします。
Amazon DocumentDB を同種データ移行に使用するには、Amazon DocumentDB データベースの認証情報 の下の Secrets Manager にユーザー認証情報を保存します。
MongoDB 互換データベースを同種データ移行のソースとして使用する機能
Amazon DocumentDB がフルロードフェーズでサポートするすべてのセカンダリインデックスを移行できます。
AWS DMS はコレクションを並行して移行します。同種データ移行は、パフォーマンスを最大化するために、コレクション内の各ドキュメントの平均サイズに基づいて実行時にセグメントを計算します。
DMS は、 CDCフェーズで作成したセカンダリインデックスをレプリケートできます。DMS は、MongoDB バージョン 6.0 でこの機能をサポートしています。
DMS は、ネストレベルが 97 を超えるドキュメントをサポートします。
MongoDB 互換データベースを同種データ移行のソースとして使用する際の制限
ドキュメントにはプレフィックスが付いたフィールド名を含めることはできません
$
。AWS DMS は時系列収集の移行をサポートしていません。
AWS DMS は、 CDCフェーズ中の
create
、drop
、またはrename collection
DDLイベントをサポートしていません。AWS DMS は、
_id
フィールドのコレクション内の一貫性のないデータ型をサポートしていません。例えば、次のサポートされていないコレクションには、_id
フィールドに複数のデータ型があります。rs0 [direct: primary] test> db.collection1.aggregate([ ... { ... $group: { ... _id: { $type: "$_id" }, ... count: { $sum: 1 } ... } ... } ... ]) [ { _id: 'string', count: 6136 }, { _id: 'objectId', count: 848033 } ]
のみCDCのタスクの場合、 は
immediate
開始モード AWS DMS のみをサポートします。AWS DMS は、無効なUTF8文字のドキュメントをサポートしていません。
AWS DMS はシャードコレクションをサポートしていません。
MongoDB 互換データベースを同種データ移行のソースとして使用するためのベストプラクティス
同じ MongoDB インスタンスでホストされている複数の大規模なデータベースとコレクションでは、データベースとコレクションごとに選択ルールを使用して、タスクを複数のデータ移行タスクとプロジェクトに分割することをお勧めします。データベースとコレクションの部門を調整して、パフォーマンスを最大化できます。