因为历史遗留问题,现有SQLServer中使用了大量的GUID主键、字符串主键。
比如微信粉丝表用OpenID做主键,现在数据量在100万+,而且还在不停增长。
OpenID还在不停的插入数据表,索引基本没有效果,索引碎片率高达99%。
页面分页也是非常慢的。
各位有没有这方面的优化经验可以介绍一下的。谢谢
不停插入没问题.应该是在不停修改吧..
你每日数据库备份任务里.重建下索引.
这应该是最简单的办法了.
谢谢。
确实也是数据在不停修改。但是主键是没有修改的。主键是只有新建插入了。
重建索引应该是有效果,就是数据量比较大,估计重新建索引估计也是很费时间和数据库资源的。
@Dhoopu: 你们数据库没有每天晚上凌晨2点备份的那个计划吗.
放到里面就好了.
@吴瑞祥: 好的,谢谢你的建议。
可以新加个自增的Id做主键,然后guid设为唯一键,这样能避免每次有新数据插入时的索引问题
谢谢。
这样是可以。就是目前系统已经线上跑几年了,这样改动是有点大了
@Dhoopu: 这样的改动不大,基本对系统没啥影响