最近做一个缓存,使用sql server 数据库来做的 建立了一个flight 表, 然后插入数据,数据是使用了Gzip 压缩发送过来的,接受页面解压缩了写入数据库 数据量很大 一天往该表写入数据大概是50万 同时可能还要跟新该表的数据,清理过期的数据 ,由于update 比较慢,我是先查询后直接删除了然后写入新的数据,但是数据量达到20万的时候sql server cpu 就永远是100%了
有同事说只有做订阅了,一台服务器查询,一台写入数据,不知道大家有没有更好的解决方法
数据库使用的是sql server 2005 希望大家帮忙分析下,多谢!
一天一个分区,你的update语句能否拿出来看看,通常插入不是什么问题,我有个日志数据库一天插入100万条数据很轻松,同时还有个SQL Server也是做类似的工作一天插入 3000 万条数据也未见垮过。
呵呵,看到killkill了。
对于这个问题,其实要看情况啦
1: 比如Temp表是否有足够的空间;
2: 还有就是可以把数据库模式设置为简单,这样插入和更新的时候就不会频繁写日志了。(如果简单可以满足的话)
3: 如果还不行的话,可以使用bcp命令来批量导入。