0

我能够将巨大的文本文件数据加载到行数为 33264591 的数据库中。我使用普通的BufferedReader逐行读取并能够推送数据。在这里,加载近 3 小时以逐行读取并插入数据库需要大量时间。

有人可以建议我使用java快速插入数据的更好方法吗?

先感谢您

4

3 回答 3

0

好吧,在继续之前,我建议使用分析器并找出为什么需要这么多时间。如果你知道问题出在哪里,解决起来会更容易。

于 2013-05-04T20:05:28.670 回答
0

我相信读取大文件的最佳方法是使用 BufferedReader 并逐行读取。所以这就是你正在做的。我想知道您是否在读取文件的同一循环中插入数据。在您的场景中,我能想到的唯一优化是在单独的线程中插入数据库,这样您就不会因为数据库插入的任何延迟而阻塞文件读取。随着表大小的增长,数据库插入将逐渐开始变得越来越慢。因此,在单独的线程中进行数据库插入将是一个好主意。

于 2013-05-04T20:06:12.910 回答
0

进行批量插入,而不是一次插入一行。

于 2014-02-05T19:34:58.227 回答