java - JPA开始出现事务瓶颈

标签 java hibernate jpa

我正在处理大量实体并使用 hibernate 将其保存到数据库。我发现,如果表中数据量很大,最多一分钟,开始事务需要很长时间(从网络服务获取数据需要近 3 小时,整个同步过程需要 20 小时)。
有没有办法改进这个方法持久化逻辑?

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);
}

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

最佳答案

ObjectDB ,对于你在JPA中持久化大数据的性能问题会有引用。

关于java - JPA开始出现事务瓶颈,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12507156/

相关文章:

java - 确保对严格正多头的异或运算仅产生严格正多头

java - 使用 Hibernate JPA 启动 Spring Boot 应用程序时出现 NoSuchMethodError

java - JPA:基于 'natural key' 合并实体

hibernate - 在带有 jpa/hibernate 的 Spring 中,如何保持 session 打开以避免延迟初始化异常?

java - 在 SmartGWT 的根节点上禁用 Drop

java - 在 Java 中重新排列对象(例如,对于 Minecraft NBT 文件)

java - 使用 "\t"(选项卡)打印不会导致列对齐

mysql - JPA 在同一事务中插入父实体和子实体

java - Hibernate:session.get(EntityName.class, Id) 和使用 Criteria 之间的区别

JPA查询-JPQL以选择在SET值集中具有所有子代的父代