我在SYBASE中有一个表,它有大约1十亿行.此表目前没有创建任何索引,我现在想创建一个.我的问题是 在创建索引之前,我应该采取哪些预防措施? 此过程是否需要分配更多的表空间? 我应
>在创建索引之前,我应该采取哪些预防措施?
>此过程是否需要分配更多的表空间?
>我应该考虑的任何其他性能考虑因素?
干杯
兰芝斯
>从 manual起.何时索引
使用以下一般准则:
>如果您计划在IDENTITY列中手动插入,请创建
一个唯一索引,用于确保插入不分配值
已被使用.
>通常按排序顺序访问的列,即在order by子句中指定的列,可能应该编入索引
Adaptive Server可以利用索引顺序.
>应始终对连接中经常使用的列建立索引,因为如果列,系统可以更快地执行连接
按排序顺序排列.
>存储表的主键的列通常具有聚簇索引,特别是如果它经常连接到列中
其他表格.请记住,每个只能有一个聚簇索引
表.
>经常搜索值范围的列可能是聚簇索引的不错选择.一旦具有第一个值的行
在找到的范围内,保证具有后续值的行
身体相邻.聚集索引不提供尽可能多的
搜索单个值的优势.
何时不进行索引
在某些情况下,索引没用:
>查询中很少或从不引用的列不会受益
来自索引,因为系统很少需要在上搜索行
这些列中的值的基础.
>只有两个或三个值的列,例如“男性”和“女性”或“是”和“否”,没有真正的优势
索引.
>试试
sp_spaceused tablename,1
Here是文档的链接.
>是 – 更新有关索引的统计信息.
Here是文档的链接.