2

VPSでホストされているAsp.NetMVC4とC#を使用してWebサイトを構築しています。このサイトにはたくさんの共有コメント/返信機能があります(たくさんのコメントを保存する必要があります)。私はMongoDBを無料で使用することを計画しており、ブログやコメントの保存にも非常に適していますが、この記事を読んだ後、少し躊躇しました。

そこで、コメントと返信の保存にMongoDbを使用し、ユーザーアカウントやその他のユーザープロファイルデータの保存に10GBの制限があるSQLServerExpressバージョンを使用することを考えています。

このような2つの異なるデータベースを1つのWebアプリで使用しても大丈夫ですか?または、SQLサーバーを使用する必要がなく、使用できるMongoDbに類似した他の安定したドキュメントデータベースはありますか?RavenDbはオプションですか?前もって感謝します !

4

1 に答える 1

2

はい、1つのWebアプリで2つの異なるデータベースを使用しても問題ありません。さらに、すべてのタイプのデータベースには短所と長所があり、すべての仕事を行うのに適しているわけではないため、そうすることは非常に良いことです。MongoDBを選択したのは、大量のデータを保存したり、大量のクエリを実行したりするのに非常に適していると聞いたからです。これはほとんど真実ですが、いくつかの注意点があります。一方、SQL Serverは非常に遅くなる可能性があり(正確なワークフローによって異なります)、大量の書き込みで簡単に過負荷になる可能性があります。
まず第一に、それはうまく機能します。多くの場合。重い負荷がかかると、できる限り一生懸命に努力します。ただし、並列書き込みでは(ロックを多用するため)書き込み効率が悪く、コレクションやドキュメントの同期を維持する必要がある場合は「非常に安全」ではありません。たとえば、SQLトランザクションなど、さまざまな処理を実行します。 mongoはドキュメントレベルのトランザクション以上のものを提供しないため、テーブル(単一のドキュメントでのすべての変更はアトミックです)。
他にも安定したドキュメントデータベースがあります。たとえば、CouchDBを見てください。これはより書き込み指向であり、マルチバージョン同時実行制御のおかげでいくつかの面白い可能性があります。

于 2012-11-13T20:14:33.657 に答える