【问题标题】:How to parallelize the DB row to Java object conversion in JPA (Java Persistence API)?如何在 JPA(Java Persistence API)中并行化 DB 行到 Java 对象的转换?
【发布时间】:2017-09-09 15:48:45
【问题描述】:

我正在尝试读取一百万条记录并使用 JPA 将它们转换为 Java 对象。 我们在一分钟内获得数据,但将它们转换为 Java 对象需要更多时间。请让我知道是否有一种方法可以并行化将每个记录转换为其自己的 Java 表示的过程,似乎它是连续发生的。我们使用 Hibernate 框架 (5.0.11) 作为 JPA Provider。

【问题讨论】:

    标签: jpa spring-data-jpa jpa-2.0


    【解决方案1】:

    EntityManager 不能是单线程的。

    另一种方法是使用 Springs JdbcTemplateResultSetExtractor

    在查询之后拆分工作负载的另一种方法是首先查询块并在单独的线程中选择每个块。

    注意:这种情况的一个常见缺陷是,虽然数据库可能会快速返回第一行,但这并不意味着所有行都可用并且只获取所有行,即遍历结果集可能需要相当长的时间更长。

    【讨论】:

      猜你喜欢
      • 2012-11-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-08-03
      • 2013-03-12
      • 2021-01-25
      • 1970-01-01
      • 2021-07-06
      相关资源
      最近更新 更多