【发布时间】:2014-02-21 17:50:36
【问题描述】:
当我们创建涉及一对多关系的数据库设计时,随着关系中数据的增长,存在潜在的性能损失风险。
例如,让我们采用一个简单的一对多关系,涉及两个表。
[User] 1 ----- m [Friends]
一个用户可以有很多朋友。一个常见的设计是两个表,其中一个包含所有用户,另一个包含该用户的所有朋友,用户 id 作为 Friends 中的外键。
但从技术上讲,随着用户数量的增长,以及随之而来的好友数量的增长,检索用户好友列表将会对性能产生影响。
有没有设计模式可以解决这类问题,还是现阶段我们必须依靠计算能力来维持性能?
【问题讨论】:
标签: sql-server database database-design