我正在处理大量实体并使用 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/