首页 新闻 会员 周边 捐助

对于频繁插入的数据表的设计

0
悬赏园豆:40 [待解决问题]

对一张【共享池】表  每天有几W或几十W数据插入  和 删除

几个小时 索引碎片就有90%+

再加上 频繁的删除、查询、插入造成的系统卡,等待独占锁释放

 

求从2个方面解决问题:

1:业务逻辑方面优化

2:数据库优化

 

感谢各位,真是愁死我了,系统一直卡,系统每天凌晨4点会重新生成索引,

但是没用啊, 别人几个小时 索引碎片就90+  再加上删除造成的 等待

zhaocj的主页 zhaocj | 菜鸟二级 | 园豆:319
提问于:2014-05-16 16:01
< >
分享
所有回答(4)
0

几十万是小量数据啊。提供的信息太少了。

Firen | 园豆:5385 (大侠五级) | 2014-05-16 16:41
0

可以了解下这些文章http://www.cnblogs.com/CareySon/archive/2012/05/08/2489748.html 重点看索引篇

对于索引碎片的生成与解决方案 http://www.agilesharp.com/showtopic-154.aspx

 

 

Zery | 园豆:6151 (大侠五级) | 2014-05-16 17:56
0

1. 插入的时候可以使用一个缓存池,使用队列处理

2. 插入使用批量操作,sqlbulkcopy 应该是一个不错的选择

3. 使用读写分离,写入数据用一张表(库),读取是另外的一张表(库),两者同步,或者使用数据库镜像

4. 使用分表,如果你每天写入几十万的数据,定期将数据库表分区备份

贺臣 | 园豆:307 (菜鸟二级) | 2014-05-17 08:42
0

数据库优化方案,1,数据库读写分离,然后同步,2,根据业务特性,垂直分表。

amityat | 园豆:476 (菜鸟二级) | 2014-05-20 11:11
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册