所以我坚持一个决定:
我正在决定是否为用户 Activity 提要做这样的事情:
id | userID | typeID | contentID | time
OR 与外键和正确索引更相关的东西,如下所示:
id | userID | postID | postCommentID | photoID | photoCommentID | time
或者按照这些思路。
我正在寻找一个答案,不仅要说明是哪一个,还要说明原因和优点/缺点。
编辑:
这适用于的另一件事是是否使用带有类型 | 的 1 个评论表contentID
或 postID | photoID
更好或 2 个单独的表;一张用于照片评论,一张用于帖子评论??
编辑 2:
数据将如何使用:
它可以在 2 种情况下使用 - 用于在用户自己或他们周围的其他用户的时间线提要中显示。
编辑 3:
尽管所有详细信息都存储在其他表中,但选择此方法来创建 Activity 提要的原因是加载提要时的速度,尽管我知道我正在牺牲写入性能。它还允许我稍后添加新的数据/帖子类型,并将查询中的连接数减少到 0。
感谢您的宝贵时间!
-斯特凡
最佳答案
当您说“饲料”时,您的意思是供其他人食用?还是用于存储其他人的提要?或者只是一个人在您系统中的 Activity ?
我会先进行规范化,然后根据需要进行非规范化,但是您的两个选项都没有显示您正在建模的范围的完整故事。
关于mysql - 用户 Activity 提要的表结构 - 关系与否?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4730825/