高分求教关于如何处理大数据量的问题
现在的需求是将一个含有100万条数据的csv或者txt文件,通过java程序导入到数据库中,
我测试过分批次导入,就是每次导入1部分数据,但是效率还是很低下。又使用过调用oracle的sqlldr这个工具导入,效果还是不行,所以求教有做过大数据量处理经验的朋友帮忙,小弟感激不尽!!!
[解决办法]
100W数据很少啊,应该很快的,是不是服务器性能不行啊,
[解决办法]
1)可以指定并行度+hint
alter session enable parallel dml;
insert /*+parallel().....
2)利用临时表,大表的数据过滤到最小范围之后存到临时表里,同时临时调大pga_aggregate_target和改用TTG(临时表空间组),让insert 尽可能在pga区完成
3)索引,分区也可根据表结构和业务需求来建立,进而加快insert
4)可以利用外部表,不必导入,直接用
5)数据泵 --expdp impdp,这个应该可以满足你的要求,我的同事曾经用它导过TB级的数据
[解决办法]