我正在创建一个应用程序,用户可以在其中发布帖子,其他用户可以喜欢和评论这些帖子。为了实现这个功能,我使用了 POSTS、LIKES、COMMENTS 等表。(我正在使用 parse.com 数据库来存储这些表) .
POSTS 具有 postId、content、userWhoMadeThePost、dateOfPosting 等字段
LIKES 包含 filelds 作为 id、postOnWhichLikeWasMade(POSTS(postId) 的外键)、userWhoLiked、dateofLike
COMMENTS 有 id、content、postOnWhichCommentWasMade(POSTS(postId) 的外键)、userWhoCommented、dateOfComment
我想检索最受欢迎的帖子(没有喜欢和评论的帖子)。
- 第一种方法是每次请求热门帖子时计算每个帖子的帖子和点赞数,但如果有数百万个帖子,这可能会变得非常耗时。
- 另一种方法是在 POSTS 表中包含“noOfLikes”和“noOfComments”,因此为了获得热门帖子,我必须只访问 post 表,但这种方法的问题是每当用户发表评论在一篇文章中,我将不得不在 POSTS 表中增加 'noOfComments' 并在 COMMENTS 表中创建一个条目,当对 POST 表成功进行增量并且在对 COMMENTS 表进行更改之前连接丢失时,问题就开始了。在这种情况下,POST 和 COMMENTS 表将显示错误的数据。
这该怎么做?