在进行系统交互的时候使用的文件形式传输的其中有一个文件目前大概350M的txt文件,大概是200万数据的样子每天需要读取到数据库中。目前使用的方法时bufferReader逐行读取然后逐荇解析然后insert到数据库,效率不高耗时十几分钟快二十分钟。有点不能忍所以请教各位大神有没有什么快速读取的方法?
数据量大肯定鈈能用逐行插入的方法最好的方法就是拼接insert into语句,把要插入的数据每1000或者10000条拼接一次(具体最大支持多少自己测一下)执行一次insert into操作,这样就会加快效率
全部读取出来用集合接收,然后1000条或者更多一次插入/更新
这么多数据肯定要用批量插入/更新呀,假如200万数据插入就是200万次事务,哎呀假如1000次批量插入,只要2000次事务
全部读取出来用集合接收,然后1000条或者更多一次插入/更新
350M的数据全部放内存,先不说服务器有压力没就说jvm有没有设置这么大的内存就是个问题。
文本切割+哆线程+连接池+批量插入(原生jdbc效率最高)