论坛首页 Java版 企业应用

一次性插入十万条记录,如何控制在1秒之内?

浏览 15782 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
最后更新时间:2008-04-15
不可能完成的任务吧。
  试想向文本中写10万行记录需要多长时间,数据库操作肯定比这个慢。不过没有做过10万条记录写文本测试。
  以前项目来不及写数据库的时候,先写入文档。然后晚上再写入数据库。
  不过10w/s....还是协商该需求吧。
   
0 请登录后投票
最后更新时间:2008-04-15
我觉得1秒插10万有点不太可能
   
0 请登录后投票
最后更新时间:2008-04-15
即使你用pro C 去做优化 估计也要超过1秒
   
0 请登录后投票
最后更新时间:2008-04-15
能插入那么多吗?好你是不可能实现的任务
   
0 请登录后投票
最后更新时间:2008-04-15
lz要插入多少条阿?可以试试看用addbatch
   
0 请登录后投票
最后更新时间:2008-04-15
把数据转成数据库特有格式数据文件,用import类似命令是最快的。
要用程序处理多线程同时插多张临时表,然后insert into table select * from tmp_table。
如果单条记录数据量很大,不管怎么样10万条还是很难的。
   
0 请登录后投票
最后更新时间:2008-04-15
感觉用一般的单台企业级pc server实现1s插100000条记录是很难的。如果考虑做一个集群的话,每个结点分别插一部分数据,也许可以。没试过,瞎说...
   
0 请登录后投票
最后更新时间:2008-04-16
supttkl 写道
我机器 :c41.6 cpu,1g内存
插入100万条记录用preparedStatement耗时883秒
用存储过程
91秒



用存储过程快这是正常,
但是,100W条记录 的数据,你的存储过程如何写呢??

有些不太明白。
   
0 请登录后投票
最后更新时间:2008-04-16
Godlikeme 写道
把数据转成数据库特有格式数据文件,用import类似命令是最快的。
要用程序处理多线程同时插多张临时表,然后insert into table select * from tmp_table。
如果单条记录数据量很大,不管怎么样10万条还是很难的。

楼主的问题问得没头没脑的。基本上这样的需求很难实现,你在挑战计算机的极限。
不过这个应该是正解
   
0 请登录后投票
最后更新时间:2008-04-16
用大机就行了
   
0 请登录后投票
论坛首页 Java版 企业应用

跳转论坛:
JavaEye推荐