データおよびアプリケーションの移行

MongoDBのためのOracle Database APIでは、既存のMongoDBワークロードを移行するための2つの推奨アプローチがサポートされています。短いサービスの中断が許容される場合は、mongodumpおよびmongorestoreでオフライン・ワークフローを使用します。移行中もアプリケーションを使用できるようにしておく必要がある場合は、Oracle GoldenGateを使用します。

mongodumpおよびmongorestoreを使用したオフライン移行

MongoDBツールには、データベース間でデータを移動するmongodumpおよびmongorestoreユーティリティが含まれています。これらのツールは、JSON索引やメタデータを含む完全なデータベースとコレクションを移行するための簡単な方法を提供します。これらのツールは高速でバイナリ・レベルのエクスポートおよびインポート(BSON形式)を実行するため、MongoDBデータベースの完全なコピーの移行に適しています。

例:

# Run mongodump on the existing MongoDB instance
mongodump --uri "mongodb://<src_user>:<src_pwd>@<src_host>:27017/payroll..." \
  --archive=/tmp/mongodump/payroll.archive.gz \
  --gzip \
  --numParallelCollections=4

# Run mongorestore with the connection string to the Oracle API for MongoDB
mongorestore \
  --uri "mongodb://<target_user>:<target_pwd>@<target_host>:27017/payroll..." \
  --archive=/tmp/mongodump/payroll.archive.gz \
  --gzip \
  --numParallelCollections=4

この例では、mongodumpをコールして、payrollデータベースをファイルpayroll.archive.gzにエクスポートします。次に、mongorestoreをコールして、アーカイブをターゲット・データベースにロードします。この方法は、payrollデータベース内のすべてのコレクションおよび索引を保持します。mongorestoreを実行する場合は、必要に応じてターゲット・スキーマ(payrollなど)を自動的に作成できるように、管理ユーザーとして接続します。

関連項目:

Oracle GoldenGateを使用したオンライン移行

Oracle GoldenGateは、異機種データベース間のリアルタイムで継続的なデータ移動のために設計されたフルマネージド・レプリケーション・テクノロジです。移行中に停止時間または読取り専用状態を必要とするバルクロード方法とは異なり、GoldenGateでは、ExtractおよびReplicatプロセスを使用して、ソースからコミットされたトランザクションを取得し、それらを証跡ファイルに書き込み、最小限のレイテンシでターゲットに適用します。

このアーキテクチャは、ソース・データベースとターゲット・データベースを数日間または数週間同期させ、計画メンテナンス・ウィンドウ中に遅延カットオーバーを可能にします。GoldenGateは、制御された時間の最終的なスイッチオーバーを予約することで、短い停止さえも許容できないミッション・クリティカルな24時間365日のシステムのビジネス継続性をサポートします。

トランザクションの一貫性、異機種間プラットフォームのサポート、および堅牢な競合管理により、GoldenGateは、停止時間がほぼゼロで運用リスクを低減した高可用性移行を必要とする企業にとって適したソリューションであることがよくあります。

次を参照してください: