一个订单的评论,怎么实现滚动分页的?评论的数据会很多,怎么存储(表设计的思路),需要通过时间分表吗? 因为一般点开评论,显示的都是最近的几条评论,这个评论信息的持久化怎么做好点?需要做评论的数据归档吗?
一个订单的评论,怎么实现滚动分页的?评论的数据会很多,怎么存储(表设计的思路),需要通过时间分表吗? 因为一般点开评论,显示的都是最近的几条评论,这个评论信息的持久化怎么做好点?需要做评论的数据归档吗?
具体存储不影响搜索结果,存储和搜索应当分开。滚动分页只需要设置一个基准值就好,比如按照时间滚动,你就用0(日期类型可以随便设置个比较早的日期值)作为基准值到搜索引擎中搜。数据库层面可以采用商品ID分表,搜索引擎的排序规则就可以看具体需求,可以按时间、评论结果、评论点赞数等等。
10 回答11.1k 阅读
15 回答8.4k 阅读
6 回答3k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
8 回答6.2k 阅读
2 回答2.6k 阅读✓ 已解决
表设计本身没有什么特别的,无非是根据实际场景分表而已(比如超过2000的评论丢到冷区)。主要是滚动分页避免了count(*)这个性能坑(例如xx的商品评论通常也是告诉你几千+而不是确定数,只有评论少于1000的时候才相对准一些)。
个人看法。
已参与了 SegmentFault 思否社区 10 周年「问答」打卡 ,欢迎正在阅读的你也加入。