1

私は専門的なソーシャル ネットワークを開発しようとしており、データベースに mongodb を使用しています。ドキュメントのサイズに関して、データベースに問題がないかどうかを尋ねたかったのです。ソーシャルネットワークに多数のユーザーを持つことを計画していることを知っています。あなたからの実用的なフィードバックをいただければ幸いです。

4

2 に答える 2

3

「多数のユーザー」はややあいまいです。大まかな見積もりが役に立ちます.とにかく、MongoDB のドキュメント サイズの制限は 16MB で、ユーザーのプロファイルの詳細を格納するには十分に見えます。ただし、「ネットワーキング」のユースケースでは、フォロワー/友達を維持することを計画している場合があります。それらをユーザープロファイルドキュメントと同じドキュメントに保存するかどうかは、それ自体が別の問題です。これらをチェックしてみてください:

ユーザーのフォロワー/フォロワーを最も効率的に照会するための適切な MongoDB ドキュメント構造は何ですか?
http://www.10gen.com/events/common-mongodb-use-cases
http://docs.mongodb.org/manual/use-cases/
http://nosql.mypopescu.com/post/316345119/mongodb -ユースケース

于 2012-07-28T12:24:17.857 に答える
1

遭遇する可能性のある問題の 1 つは、MongoDB が各ドキュメントの各フィールドのフィールド名のテキストを保存することです。したがって、一連のドキュメントに必要な「名前」または「住所」というフィールドがある場合、そのテキストはすべてのドキュメントに表示され、スペースを占有します。これは、列の名前が一度だけ格納されるスキーマを持つリレーショナル データベースとは異なります。

数年前、私はエンジニアが数百万人のユーザーをシミュレートしたときにデータ セットのサイズに少し驚いたプロジェクトに取り組みました。彼らはデータのサイズを最適化しましたが (つまり、"Location 1" ではなく "loc1")、フィールド名については同じことをしていませんでした。これは、RDBM 開発に慣れている開発者が NoSQL ソリューションについて仮定を立てるときに問題になります。フィールド名とフィールド値ではなく、データのサイズのみをカウントします。

彼らは、公開前のテストでこれを発見できたことを喜んでいました。そうでなければ、必要な変更を実装するために、すべての公開ドキュメントを移行する必要があったでしょう。

それは大したことではなく、確かに MongoDB を使用しない理由ではありません (スキーマが少なく、各ドキュメントを一意のアイテムとして扱うことは、バグや設計上の欠陥ではなく、結局のところ機能です)。心に留めておくべきことがあります。

于 2012-07-28T12:09:29.350 に答える