[英]DB Design question: Tree (one table) vs. Two tables for tweets and retweets?
我听说在stackoverflow上,问题和答案存储在同一数据库表中。
如果您要构建类似Twitter的服务,则仅允许1级评论。 即1条推文,然后对该推文发表评论/回复,但没有重新评论或重新回复。
您会在推文和转推中使用两个表格吗? 还是只有一个表中的字段parent_tweet_id是可选的?
我知道这是一个悬而未决的问题,但是两种解决方案都有哪些优势?
转推还是普通的推。 所以一张桌子。 您不需要从两个表中加载来包含转推。
一张桌子的优点:
identity
列。 两个表的优点:
简而言之,这取决于您如何使用数据,而不仅取决于数据的结构。 关于数据需要执行的操作,您还没有太多发言。
像所有设计问题一样,这取决于。
我通常不喜欢在单个表中混合概念。 我发现它会迅速破坏数据库架构的概念完整性。 例如,我不会将帖子和回复放在同一表格中,因为它们是不同的实体。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.