私は、ドキュメント データベースに足を踏み入れる方法として、簡単なフォーラムをまとめています。モデル化するのは比較的簡単なことだと考えています。
ドキュメントをどのように保管すればよいかを正確に把握するのに苦労しています。現時点では RavenDB を使用していますが、他のドキュメントでも同様になると思います。データベース。
つまり、基本的に、Forums
各フォーラムには多数の がThreads
あり、各スレッドにはPosts
によって作成された多数のスレッドが含まれていUsers
ます。
私の頭の中で、これらのそれぞれが別個のドキュメントであるようにプロットしました。これは主に、それぞれForum
が何千もの を持つ可能性がThreads
あり、それぞれThread
が何千ものPosts
. 明確でないドキュメントを持っていると、時間の経過とともにそれらが巨大になるように思われますか?
すべてのリストを表示するページを表示するときに、名前 (大したことはありません) と投稿数Posts
を表示したいと思います。ここが私が立ち往生している場所です。Author
Author
変更される可能性は低いため、Author
名前を投稿Author
に保存できますが、投稿数は常に変化するため、Post
.
したがって、50 件の投稿があるページを表示している場合、現在のAuthor
投稿数を取得するには、結合に相当するリレーショナル処理を実行する必要があります。これは、ドキュメント DB がこのシナリオに適していない場合を除き、私が間違っていることを示していますか?
編集
RavenDBのLive Projectionsはこれを問題なく処理できるように見えますが、考えられる代替 DB 設計についてコメントを残しておきたいと思います。