我试图从概念上理解社交媒体网站的设计。我在数据库答案中看到样本模型有一个" Me" table,myMovements,myProfiles我认为是用户唯一的(即用户Bob有:Bob,bobMovements,bobProfile)。但是有一些表格,例如" Contacts"和" Wall_posts"。在这种情况下,我们是否认为放置所有用户'将联系人或墙上的帖子放到一个表中然后运行一个查询以通过user_id进行选择(我认为这样做是为了防止几个空表没有被真正使用)?或者这些表是否会单独创建为" Bob_wall_posts"?
作为数据库设计的新手,我很好奇是什么类型的性能差异(如果有的话)会有这样或那样的方式;并且有没有理由创建" bob_wall_posts"因为这似乎是管理的噩梦?
据说,如果说联系人表有数百万条记录,那么这样的表会呈指数增长,有没有办法构建它以优化性能?或者编写优化查询的一些方法?
以下是我所指的模型。
答案 0 :(得分:1)
关系数据库设计的基础,你不会为每个用户构建数据表...
我甚至不认为应该解决性能问题,它只是没有完成......
关系数据库具有非常快速的搜索优化。只需正确定义您的密钥,并在需要时使用索引,您应该好好去...
希望有所帮助