有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java JPA开始事务瓶颈

我正在处理大量的实体,并使用hibernate将其持久化到DB。我已经发现,如果表中的数据量很大,开始事务需要花费大量时间,最长可达一分钟(从web服务获取数据时,整个同步过程需要20小时,而从web服务获取数据需要将近3小时)
有没有办法改进这种方法的持久性逻辑

final EntityManager em = emf.createEntityManager();
try {
    final MfBranch branch = <get data from web service>
    em.getTransaction().begin(); // bottleneck
    em.merge(branch);
    em.getTransaction().commit();
} finally {
    DisposableUtils.closeQuietly(em);
}

我认为合并或事务提交操作耗时是合理的,但为什么事务开始耗费时间?


共 (1) 个答案

  1. # 1 楼答案

    ObjectDB中,将有关于在JPA中持久化大数据的性能问题的参考