DynamoDB と MongoDB NoSQL [終了] 質問する

DynamoDB と MongoDB NoSQL [終了] 質問する

将来のプロジェクトに何を使用できるか考えています。最初の 1 年間は毎月約 50 万件のレコードを保存し、次の数年間はそれ以上のレコードを保存する予定です。これは垂直アプリケーションなので、データベースを使用する必要はありません。そのため、NoSQL データ ストレージを選択することにしました。

最初に思い浮かんだ選択肢は、コミュニティから多くのサポートを受けている非常に成熟した製品である mongo DB でしたが、一方で、最高のパフォーマンスでマネージド サービスを提供するまったく新しい製品も登場しました。このアプリケーションを開発しますが、メンテナンス プランはありません (少なくとも現時点では)。そのため、Amazon は柔軟なスケーリング方法を提供しているため、これは大きな利点になると思います。

私の主な懸念はクエリ構造についてです。Dynamo DB のクエリ機能はまだ確認していませんが、これは ak/v データ ストレージであるため、mongo DB よりも制限される可能性があると感じています。

MongoDB から DynamoDB にプロジェクトを移行した経験のある方がいらっしゃいましたら、アドバイスをいただければ幸いです。

ベストアンサー1

これは古い話ですが、比較を検索すると今でも出てきます。私たちはMongoを使用していましたが、ほぼ完全にDynamoに移行しました。今ではこれが私たちの第一選択です。機能が多いからではありません。Mongoの方がクエリ言語が優れていて、構造内でインデックスを作成でき、細かい点がたくさんあります。Dynamoの優位性は、OPがコメントで述べたように、簡単であることです。サーバーの面倒を見る必要はありません。Mongoのシャードソリューションの設定を開始すると、複雑になります。ホスティング会社の1つに行くこともできますが、それも安くはありません。Dynamoでは、スループットが必要な場合はボタンをクリックするだけです。自動的にスケーリングするスクリプトを作成できます。Dynamoをアップグレードするときは、自動的に行われます。貴重なストレスや時間を費やす必要がなくなります。専任の運用担当者がいない場合は、Dynamoが最適です。

ということで、現在ではデフォルトで Dynamo を使用しています。データ構造が複雑で Mongo が妥当な場合は、Mongo を使用するかもしれませんが、その場合は SQL データベースに戻ることになるでしょう。Dynamo はわかりにくいので、構築方法についてよく考える必要があります。また、複雑な処理を実行するには、Elasticcache で Redis を使用することになるでしょう。しかし、Dynamo を管理する必要がないのは確かに便利です。コーディングするだけです。

おすすめ記事