高手急进!超大数据量导出

abcyzq 2009-11-17 09:58:55
描述如下:
现有一监控数据表,大约1亿条记录,现在要改善性能,决定做分区视图(sqlserver2005 标准版,无分区表功能),把每个月的数据导出到历史表(约2千万),怎么处理分区视图代码已经写好,有一个疑问:就是如何快速把每个月两千万条数据导出到历史表,Insert into 历史表 select 当前表,速度肯定太慢,请高手指教,谢谢,在线等!
...全文
177 30 打赏 收藏 转发到动态 举报
写回复
用AI写文章
30 条回复
切换为时间正序
请发表友善的回复…
发表回复
abcyzq 2009-11-18
  • 打赏
  • 举报
回复
导入导出不写日志,其他的都写了日志,换成了简单模式也把硬盘撑暴了,正考虑加上大硬盘。
abcyzq 2009-11-18
  • 打赏
  • 举报
回复
[Quote=引用 28 楼 colacat911 的回复:]
bcp比较快,但是导入导出需要2步,加起来时间也不少


直接insert into 吧,你在条件列上加索引就可以了
[/Quote]

对2千万条数据做了些测试,导入导出相对快一些,其他的比较慢,
忆轩辕 2009-11-18
  • 打赏
  • 举报
回复
bcp比较快,但是导入导出需要2步,加起来时间也不少


直接insert into 吧,你在条件列上加索引就可以了
happinessdepig 2009-11-18
  • 打赏
  • 举报
回复
关注
dollyxz 2009-11-18
  • 打赏
  • 举报
回复
用BCP是我知道的目前最快的方法了
xiequanqin 2009-11-17
  • 打赏
  • 举报
回复
做个循环吧。可以考虑每天insert一次(100万之内的话MS SQL 基本可以承受)。
zqtoo 2009-11-17
  • 打赏
  • 举报
回复
学习,帮顶!
szpilmany 2009-11-17
  • 打赏
  • 举报
回复
事务日志压缩了,会对数据库影响吗
szpilmany 2009-11-17
  • 打赏
  • 举报
回复
学习
xuejie09242 2009-11-17
  • 打赏
  • 举报
回复
简单模式,用导入导入工具,完成后收缩一下日志。
Q315054403 2009-11-17
  • 打赏
  • 举报
回复
不要误解,简单模式跟性能无关,只是日志空间复用而巳
因为受限于标准版,那就只能从CPU、HD、数据库结构设计上去改善
有偿专业支持
abcyzq 2009-11-17
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 fredrickhu 的回复:]
那这样
企业管理器--服务器--右键数据库--属性--事务日志
--将文件增长限制为xM(x是你允许的最大数据文件大小)
[/Quote]

已经是这样的,还是不够快。
abcyzq 2009-11-17
  • 打赏
  • 举报
回复
继续寻找牛逼方法,这个事情做杂了,就直接挂了。
icelovey 2009-11-17
  • 打赏
  • 举报
回复
那海量数据的话, 导出应该要这么久时间吧.
定时的话用DTS导就是一般的办法了
laker_914 2009-11-17
  • 打赏
  • 举报
回复
没碰到过,学习了
abcyzq 2009-11-17
  • 打赏
  • 举报
回复
主要是数据量太大,1亿条,从中间计算一个月的数据select count(*) where 月份='9',都要2分钟时间。
--小F-- 2009-11-17
  • 打赏
  • 举报
回复
那这样
企业管理器--服务器--右键数据库--属性--事务日志
--将文件增长限制为xM(x是你允许的最大数据文件大小)
--小F-- 2009-11-17
  • 打赏
  • 举报
回复
日志不怕
把数据库属性中的故障还原模型改为“简单”可以大大减慢日志增长的速度。
abcyzq 2009-11-17
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 guguda2008 的回复:]
改成简单模式再导试试
[/Quote]
已经是简单模式了
guguda2008 2009-11-17
  • 打赏
  • 举报
回复
改成简单模式再导试试
加载更多回复(9)

22,207

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧