日期:2014-05-20  浏览次数:20873 次

请教达人:往数据库中要插入1亿多条数据用JAVA程序实现可行吗?
我用的数据库是ORACLE,要往库里面8张表分别插入1千多万条数据,总计1亿多条数据。我用JAVA程序,循环嵌套循环实现的。大概运行了3个多小时,向库中插入了1百多万条数据的时候,程序好像停止执行了,控制台没有输出,也不报错!库中数据也不增加了。程序并不复杂,应该是没有问题的,如果有问题,应该有异常信息在控制台抛出。不知道是什么原因?

------解决方案--------------------
bomb
------解决方案--------------------
ORACLE I/O操作太忙 没有响应了
java一直处在挂起状态
------解决方案--------------------
优化一下你的程序....循环嵌套效率很低的啊..

而且貌似没有考虑异常
------解决方案--------------------
数据源从哪里来?这样操作太慢了
------解决方案--------------------
不行就不要java做了,试试有没有直接导出数据导入oracle中,我想用这种方案更有效率一些
------解决方案--------------------
同志,一亿多条数据用JAVA搞,头会破掉的,换PROC吧.
------解决方案--------------------
做一个后台自动运行的线程,把要插入的数据分成一千份,每插入一份时提交一下,然后再插入下一份。
如果在这里不能得到满意回答,请尝试到IT付费问答社区www.nlld.net提问
------解决方案--------------------
楼上貌似替“IT付费问答社区”做广告的,呵呵
------解决方案--------------------
要插入那么大的数据量,很可能会造成OOM

楼主,你要插那么多的数据是用的批量操作吗?

现确定自己机器的承受能力,找到最佳平衡点,然后perpareBatch,executeBatch,clearBatch一次一次,将要插入的数据分批插入数据库
------解决方案--------------------
3个小时才一百多万,程序效率肯定不行.
若是想作测试之用,有专门的测试工具可以实现.