【发布时间】:2010-09-13 13:31:31
【问题描述】:
我正在开发一个使用相当大的 Oracle 数据库的项目(尽管我的问题同样适用于其他数据库)。我们有一个网络界面,允许用户搜索几乎任何可能的字段组合。
为了加快这些搜索的速度,我们正在为我们认为用户通常会搜索的字段和字段组合添加索引。但是,由于我们并不真正知道我们的客户将如何使用该软件,因此很难确定要创建哪些索引。
空间不是问题;我们有一个 4 TB 的 RAID 驱动器,我们只使用了其中的一小部分。但是,我担心索引过多可能会导致性能损失。因为每次添加、删除或修改行时都需要更新这些索引,所以我认为在一个表上拥有数十个索引是个坏主意。
那么有多少索引被认为是太多了? 10? 25? 50?还是我应该只涵盖真正、非常常见和明显的案例而忽略其他所有内容?
【问题讨论】:
标签: database oracle database-design