gpt4 book ai didi

java - 填充表格时如何防止速度变慢?

转载 作者:行者123 更新时间:2023-11-29 03:38:06 24 4
gpt4 key购买 nike

我正在从存储在我机器上的文本文件填充一个表。到此结束时将有大约一百万条记录,但填充速度太慢,实际上需要 12 个小时才能达到 140000 条记录。使用 while 循环,我提取每条记录所需的信息,然后调用此函数:

 public void populateDB(int pid, String id, String title, String yearPublished, String author, String summary) {

Papers p = new Papers();
p.setPid(pid);
p.setPaperId(id);
p.setTitle(title);
p.setYearPublished(yearPublished);
p.setAuthor(author);
p.setSummary(summary);
em.persist(p);
em.flush();
System.out.println("Populated paper " + id);

}

但是随着迭代次数的增加,速度会显着降低。我认为这与 cpu 使用率有关,它似乎限制在 50%。但我不知道如何增加它。最大和最小线程池设置为 10。我怎样才能阻止它变慢?

Glassfish 3.1.2.2 enter image description here

最佳答案

在你的循环中进行刷新并不是一件好事,而且你在哪里提交也很重要。另一个要考虑的因素是表上有哪些索引。导入时是否可以删除它们?也许还可以看看

中的一些批量插入

http://viralpatel.net/blogs/batch-insert-in-java-jdbc/

关于java - 填充表格时如何防止速度变慢?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18264659/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com