我猜这个标题不是很具描述性,所以我会解释一下!我有一个名为users_favs的表,其中存储了用户喜欢哪些帖子的所有信息,他喜欢哪个帖子以及评论相同的帖子。 info存储为关心的serealized array /或JSON。
问题:什么更好?保持这样或为每个字段制作4个表,并且不是以实现版本存储,而是像user_id => POST_ID ??? 我对第二种选择的看法是,经过一段时间后,这个领域将是GIGANTIC。此外,我需要进行4次查询(或使用JOINS)来获取这些表中的所有信息。
答案 0 :(得分:1)
将其保存在1个表中意味着您只需要1个表访问和0个连接即可获取所有数据。将它存储在4个表中时,如果需要n个字段的信息,则至少需要1个表访问和n-1个连接。查询结尾处的结果集可能相同,因此通过网络发送的数据量与表结构无关。
答案 1 :(得分:0)
我假设你有一个fav_categories数据的场景,其他列为null。对于列fav_posts,likes_posts,likes_comments也是如此。因此,很有可能在每一行中,大多数时候只有三列会有数据(id,user_id,其中任何一个)。如果我的假设是正确的以及用例,那么我肯定会去四个四个表。
要添加到上面,您可以随时选择是否要进行阅读友好或写入友好。