0
我对Integer和String鉴别器类型之间的性能差异有疑问。 我使用的加盟策略,即:JPA鉴别器类型性能
@Inheritance(strategy = InheritanceType.JOINED)
@DiscriminatorColumn(name = "DTYPE", discriminatorType = DiscriminatorType.STRING)
public abstract class SuperClass
和我有一个正在扩展这个超类的一些子类。 哪个有更好的表现? DiscriminatorType.INTEGER
或DiscriminatorType.STRING
?
我们的供应商是eclipselink,我们正在处理海量数据。
在此先感谢。
你是什么意思“大规模”的确切。 – cool
性能取决于数据库类型,索引类型,索引大小。也许这篇文章会帮助你:[https://weblogs.java.net/blog/caroljmcdonald/archive/2009/08/28/jpa-performance-dont-ignore-database-0](https://weblogs.java .NET /博客/ caroljmcdonald /存档/ 2009/08/28/JPA的性能不要-忽略数据库-0)。无论如何,尝试使用String和Integer类型来运行基准测试。 –
谢谢安德烈。我做了一个基准测试,发现没有什么重大区别。当然,这是一个测试环境,当然在生产环境中,情况会有所不同。据我所知,eclipselink将生成查询,将鉴别器列与鉴别器值进行比较。所以唯一的性能问题是用数字或字符串进行比较。在Oracle和索引中,我并不认为有什么重大差别。可以? –