で複数のデータを構造化するための効率的な方法である私はMongoDBのを使用してアプリケーションを書いていたユーザが、ここでお互いにメッセージを送信することができていることは、私は何MongoDBの
user_to
user_from
message
sent
ip
unread
を保存するフィールドは、私が求めていますどのようなものされている場合ユーザAは、例えばするためのユーザBにMSGを送信:
user_to : B,
user_from : A,
message :hello world,
sent:1334901545,
ip : XX.XX.XX.X,
unred : true
これは、データが最初に格納されているが、再度、ユーザA iはデータべきであることを記憶する方法をユーザBにメッセージを送信するときにどのようなフォーマットであります? 二つの方法を考えている私
user_to : B,
user_from : A,
message :hello world again,
sent:1334901745,
ip : XX.XX.XX.X,
unred : true
または
user_to : B,
user_from : A,
messages : array(
array(message="hello world",sent="1334901545",ip: XXX.X.XX.XX,unread:true),
array(message="hello world again",sent="1334901745",ip:XX.XX.XX.X,unread:true)
)
第1のタイプは分析するために照会するため、より良いと非常に簡単な構造が非常にシンプルで、最も効率的である私に教えてください、私はそれが重複を増やすと思いますデータが大きくなり、アプリケーションが増えるにつれてより大きなディスクスペースを消費することになる。
2番目のタイプでは重複したレコードはなく、ディスク容量は少なくなるが、読み込みが困難なため、amd他の多くの合併症
私はちょうど