sqlserver2008R2上亿大表查询优化问题
如题,这个问题搜索了很多,看下来目前就是索引+分区的解决方案。
我的是数据仓库表,为之后每天的cube更新用的,每次都要select很多个字段,之前在日期和筛选字段都建过索引了,但是因为大表并不是做单纯的某个字段查询,所以速度还是很慢。因为在实际环境,怕影响正常使用,暂时没有做分区操作,将近两亿的大表分区起来应该也要耗费很长时间吧?
我有几个问题不明白,想问下:
1.如果对大表进行分区操作,会不会影响后面的cube更新数据?我看好像是逻辑上分了多个,实际查询还是一个表的。
2.因为多数情况是按时间查询,我想按年份分区,一年一个分区,但是有些年份的记录很少,这样分会不会不合理呢?有影响吗?
3.因为当前已经在大表上建立了聚集和非聚集索引,分区的时候要怎么操作?先删除索引么?分区之后还需要为每个分区创建索引么?
除了以上的办法,是否还有其他解决方案呢,请高手们不吝赐教。