ほとんどの場合、プロジェクトが大きくない場合は、プロジェクトに1つのデータベースを選択することをお勧めします。本当に大きなプロジェクト(または一般的な企業)では、私は思う 長期的な組織は
の組み合わせを使用します- トランザクション性の高いOLTP用のRDBMS
- NoSQL
- データウェアハウジング/BIプロジェクト
しかし、より合理的な範囲のものについては、ユースケースのコアを実行するものを選択し、それをすべてに使用してください。
ユーザーデータをmongodbに保存するIMOは問題ありません。単一のBSONドキュメントに対してアトミック操作を実行できるため、「このユーザー名をアトミックに割り当てる」などの操作を実行できます。 REDOログ付き( --journal )(v1.8 +)、レプリケーション、 slavedelayed レプリケーションでは、かなり高度なデータの安全性を確保できます。紙の上の他のデータベース製品と同じくらい高いです。安全性に反対する主な論拠は、製品が新しく、古いソフトウェアの方が常に安全であるということです。
アカウンティングなどの非常に複雑なACIDトランザクションを実行する必要がある場合は、RDBMSを使用してください。
また、多くのレポートを作成する必要がある場合、特にデータセットが1つのサーバーに収まる場合は、現時点ではmysqlの方が適している可能性があります。 SQLGROUPBYステートメントは非常に強力です。