1 つの SQL サーバーから mongoDB へのデータ移行を実行するのに最適な AWS インフラストラクチャは何ですか?

1 つの SQL サーバーから mongoDB へのデータ移行を実行するのに最適な AWS インフラストラクチャは何ですか?

SQL サーバーを実行するレガシー システムに数テラバイトのデータがあります。新しいバージョンは MongoDB で実行されます。このデータを MongoDB に移行しています。Python スクリプトを記述して検証し、すべてのデータ移動が適切に行われています。

私たちはこれを 4 コアの低スペックマシンで実行しましたが、これをより大きなマシンで実行すると、非常にコストがかかります。AWS Lambda の処理時間は 15 分ですが、1 回の反復が完了するまでに 24 時間以上かかります。AWS ステップ関数はそれを約束していますが、それが正しいかどうかはわかりません。

答え1

ローカルで「mongoexport」を実行し、S3 (または物理的な AWS Snowcone デバイス) にエクスポートし、EC2 インスタンスを使用して「mongoimport」を実行し、スクリプトを実行してダンプ以降の更新を行うことはできませんか?

実行方法については、特にその地域のピーク時間外、たとえば週末に使用する場合は、スポット EC2 インスタンスを使用すればおそらく問題ありません。ジョブを中断できない場合は、オンデマンド EC2 を使用します。4 コア / 16GB RAM の m5.xlarge は 1 時間あたり 0.20 ドルで、2、3 日使用すると 10 ドルになります。

また、100Mbpsで3TBの送信には2.6日かかりますが、800Mbpsでは7時間かかります。ただし、この帯域幅を維持するのはDirectConnectなしでは難しいかもしれません。AWS スノーコーンこれは、データをコピーして AWS に発送する物理デバイスです。

AWS Database Migration Serviceを使用することをお勧めします。移住するMongoDBからAWS ドキュメントDBこれは、名前の異なる MongoDB のバージョンです。DMS がデータを移行するので、アプリケーションを新しいインスタンスに向け、古いインスタンスをオフにするだけです。

関連情報