当前位置: 代码迷 >> 数据仓库 >> 大表优化,该如何解决
  详细解决方案

大表优化,该如何解决

热度:341   发布时间:2016-05-05 16:15:59.0
大表优化
请问各位大侠,我有一张表有一亿条记录,有6个字段:id,Surname,givenname,spouse_name,mother_name,year,除了一个字段id很少用到外,其它字段都是经常使用,但不会更新,删除,因为是一个数据仓库,所以我应该如何创建索引呢?

------解决方案--------------------

1. 根据你的描述,这个表不会被Update和Delete操作,那么建立Index是可行的。
2. 你的问题是:如何建立Index?那么,你必须知道你平时SELECT的时候,WHERE语句是怎么写的。大多数据情况下使用某个或者某几个字段?
a) 如果是单条件:请在该字段上建立Index 
b) 如果是复合条件:请建立复合Index
c) 尽量将SELECT字句中的字段Include到Index中,建立覆盖Index
3. 做到上面的还不行,你还必须考虑下面的问题来进一步提升表性能:
a) 可否将表中老数据迁移
b) 可以考虑使用分区试图来减小被搜索表的压力
c) 定期的做Index Rebuild,提升Index的作用
  相关解决方案