私は、ユーザーが各投稿に賛成票/反対票を投じることができるコレクションを持っていPosts
ます。Users
これをmongodbデータベースに保存して、ユーザーが特定のドキュメントに複数回投票できないようにする最善の方法は何ですか?
私が思いついた最も単純な nosql っぽい解決策は、各Post
ドキュメント内で投票した user_ids の配列 (または、ユーザーが投票を変更できるように、 (user_id, vote)
whereが +1 または -1 の配列) を格納することです。vote
各投稿が何千票もある可能性があることを考えると、パフォーマンスの観点からは良い考えですか?
上位の投稿が数十万票を獲得できる Reddit のような本当に人気のある Web サイトについてはどうでしょうか?