15. Performance
We now present the execution times for the [JUnitTestPushTheLimits] test (2,500 categories, 5,000 products) for the 24 possible configurations (6 DBMS * (1 JDBC + 3 JPA)). The figures are not meaningful in their absolute values but only in their comparison. We draw no conclusions and leave it to the reader to draw their own. Note that because we are running a test common to all 24 configurations, the specific features of the JPA implementations were not utilized. This could alter the results that follow.
For each DBMS, the [dbproduitscategories] database was deleted and then rebuilt to undergo the four successive tests.
MySQL 5 Community Edition
JDBC | spring-jdbc-generic-04-JUnitTestPushTheLimits | 47.555 |
JPA Hibernate | spring-jpa-generic-JUnitTestPushTheLimits-hibernate-eclipselink | 94,919 |
JPA EclipseLink | spring-jpa-generic-JUnitTestPushTheLimits-hibernate-eclipselink | 91,571 |
JPA OpenJPA | spring-jpa-generic-JUnitTestPushTheLimits-openjpa | 100,387 |
Oracle Express 11g Release 2
JDBC | spring-jdbc-generic-04-JUnitTestPushTheLimits | 108.590 |
JPA Hibernate | spring-jpa-generic-JUnitTestPushTheLimits-hibernate-eclipselink | 154,883 |
JPA EclipseLink | spring-jpa-generic-JUnitTestPushTheLimits-hibernate-eclipselink | 143,010 |
JPA OpenJPA | spring-jpa-generic- JUnitTestPushTheLimits-openjpa | 90,874 |
PostgreSQL 9.4
JDBC | spring-jdbc-generic-04-JUnitTestPushTheLimits | 86.074 |
JPA Hibernate | spring-jpa-generic-JUnitTestPushTheLimits-hibernate-eclipselink | 203,358 |
JPA EclipseLink | spring-jpa-generic-JUnitTestPushTheLimits-hibernate-eclipselink | 183,995 |
JPA OpenJpa | spring-jpa-generic-JUnitTestPushTheLimits-openjpa | 197,068 |
IBM DB2 Express-C 10.5
JDBC | spring-jdbc-generic-04-JUnitTestPushTheLimits | 285,000 |
JPA Hibernate | spring-jpa-generic-JUnitTestPushTheLimits-hibernate-eclipselink | 332,247 |
JPA EclipseLink | spring-jpa-generic-JUnitTestPushTheLimits-hibernate-eclipselink | 371,619 |
JPA OpenJPA | spring-jpa-generic-JUnitTestPushTheLimits-openjpa | 253,953 |
SQL Server 2014 Express Edition
JDBC | spring-jdbc-generic-04-JUnitTestPushTheLimits | 81.437 |
JPA Hibernate | spring-jpa-generic-JUnitTestPushTheLimits-hibernate-eclipselink | 216,15 |
JPA EclipseLink | spring-jpa-generic-JUnitTestPushTheLimits-hibernate-eclipselink | 214.398 |
JPA OpenJPA | spring-jpa-generic- JUnitTestPushTheLimits-openjpa | 236,691 |
Firebird 2.5.4
JDBC | spring-jdbc-generic-04-JUnitTestPushTheLimits | 132.305 |
JPA Hibernate | spring-jpa-generic-JUnitTestPushTheLimits-hibernate-eclipselink | 304,458 |
JPA EclipseLink | spring-jpa-generic-JUnitTestPushTheLimits-hibernate-eclipselink | 257,555 |
JPA OpenJPA | spring-jpa-generic-JUnitTestPushTheLimits-openjpa | 363,546 |