【发布时间】:2010-12-16 07:35:34
【问题描述】:
我们有许多来自网络服务的项目;每个项目包含未知数量的属性。我们将它们存储在具有以下架构的数据库中。
物品
- 物品ID
- 物品名称
属性
- 属性ID
- 属性名称
- 属性值
- 属性值类型
- 传输时间
- ItemID [fk]
属性表变得非常大,因为它存储了每个项目的属性,每次调用 Web 服务时。我的问题是:我们应该在什么时候停止向 Properties 表添加新记录,并根据传输时间归档旧的 Property 记录?什么时候属性表变得太大,查询时间太长?有经验法则吗?
谢谢。
【问题讨论】:
-
对此没有冷硬的规则 - 如果您为最常见的查询设置了适当的索引,那么您可能拥有数亿行并且仍然可以获得良好的查询性能。
标签: sql-server performance optimization