Comparison of OpenJPA with Derby embedded vs EclipseLink with HSQLDB server
Each of the following tables focuses on a specific database operation, where the last table presents average results comparison.
Speed comparison of JPA database persistence operations (normalized score, higher is better)
Transaction Size => | Few Entities | Many Entities | Average Score | |||
---|---|---|---|---|---|---|
  | OpenJPA Derby embedded | EclipseLink HSQLDB server | OpenJPA Derby embedded | EclipseLink HSQLDB server | OpenJPA Derby embedded | EclipseLink HSQLDB server |
Basic Person Test | 6.6 | 12.2 | 6.4 | 20.9 | 6.5 | 16.6 |
Element Collection Test | 7.1 | 11.6 | 5.5 | failed | 6.3 | 11.6 |
Inheritance Test | 4.1 | failed | 5.6 | failed | 4.9 | failed |
Indexing Test | 6.3 | failed | 6.8 | failed | 6.5 | failed |
Graph (Binary Tree) Test | 2.3 | failed | 2.5 | failed | 2.4 | failed |
Multithreading Test | 7.2 | failed | 0.0000 | failed | 3.6 | failed |
All Tests | 5.6 | 11.9 | 4.5 | 20.9 | 5.0 | 14.9 |
EclipseLink with HSQLDB server has failed in 9 tests (see exceptions).
Speed comparison of JPA database retrieval operations (normalized score, higher is better)
Retrieval Size => | Few Entities | Many Entities | Average Score | |||
---|---|---|---|---|---|---|
  | OpenJPA Derby embedded | EclipseLink HSQLDB server | OpenJPA Derby embedded | EclipseLink HSQLDB server | OpenJPA Derby embedded | EclipseLink HSQLDB server |
Basic Person Test | 14.7 | 2.6 | 28.9 | 14.6 | 21.8 | 8.6 |
Element Collection Test | 1.0 | 1.4 | 14.9 | failed | 8.0 | 1.4 |
Inheritance Test | 1.4 | failed | 18.0 | failed | 9.7 | failed |
Indexing Test | 20.1 | failed | 31.4 | failed | 25.7 | failed |
Graph (Binary Tree) Test | 0.35 | failed | 1.5 | failed | 0.92 | failed |
Multithreading Test | 20.1 | failed | 26.3 | failed | 23.2 | failed |
All Tests | 9.6 | 2.0 | 20.2 | 14.6 | 14.9 | 6.2 |
EclipseLink with HSQLDB server has failed in 9 tests (see exceptions).
Speed comparison of JPA database query operations (normalized score, higher is better)
Retrieval Size => | Few Entities | Many Entities | Average Score | |||
---|---|---|---|---|---|---|
  | OpenJPA Derby embedded | EclipseLink HSQLDB server | OpenJPA Derby embedded | EclipseLink HSQLDB server | OpenJPA Derby embedded | EclipseLink HSQLDB server |
Basic Person Test | 1.3 | 0.53 | 8.6 | 3.0 | 5.0 | 1.8 |
Element Collection Test | 0.41 | 0.98 | 0.95 | failed | 0.68 | 0.98 |
Inheritance Test | 0.24 | failed | 1.1 | failed | 0.66 | failed |
Indexing Test | 9.1 | failed | 17.7 | failed | 13.4 | failed |
Multithreading Test | 5.2 | failed | 10.6 | failed | 7.9 | failed |
All Tests | 3.2 | 0.75 | 7.8 | 3.0 | 5.5 | 1.5 |
EclipseLink with HSQLDB server has failed in 7 tests (see exceptions).
Speed comparison of JPA database update operations (normalized score, higher is better)
Transaction Size => | Few Entities | Many Entities | Average Score | |||
---|---|---|---|---|---|---|
  | OpenJPA Derby embedded | EclipseLink HSQLDB server | OpenJPA Derby embedded | EclipseLink HSQLDB server | OpenJPA Derby embedded | EclipseLink HSQLDB server |
Basic Person Test | 2.2 | 1.9 | 5.1 | 7.5 | 3.6 | 4.7 |
Element Collection Test | 2.6 | 3.1 | 4.6 | failed | 3.6 | 3.1 |
Inheritance Test | 1.0 | failed | 5.3 | failed | 3.2 | failed |
Indexing Test | 7.0 | failed | 7.5 | failed | 7.2 | failed |
Graph (Binary Tree) Test | 1.3 | failed | 1.0 | failed | 1.2 | failed |
Multithreading Test | 4.9 | failed | 5.5 | failed | 5.2 | failed |
All Tests | 3.2 | 2.5 | 4.8 | 7.5 | 4.0 | 4.2 |
EclipseLink with HSQLDB server has failed in 9 tests (see exceptions).
Speed comparison of JPA database removal operations (normalized score, higher is better)
Transaction Size => | Few Entities | Many Entities | Average Score | |||
---|---|---|---|---|---|---|
  | OpenJPA Derby embedded | EclipseLink HSQLDB server | OpenJPA Derby embedded | EclipseLink HSQLDB server | OpenJPA Derby embedded | EclipseLink HSQLDB server |
Basic Person Test | 8.6 | 9.5 | 8.1 | 33.1 | 8.4 | 21.3 |
Element Collection Test | 6.2 | 6.7 | 1.3 | failed | 3.7 | 6.7 |
Inheritance Test | 7.3 | failed | 4.3 | failed | 5.8 | failed |
Indexing Test | 15.2 | failed | 6.0 | failed | 10.6 | failed |
Graph (Binary Tree) Test | 5.6 | failed | 8.3 | failed | 6.9 | failed |
Multithreading Test | 5.5 | failed | 0.0000 | failed | 2.7 | failed |
All Tests | 8.1 | 8.1 | 4.7 | 33.1 | 6.4 | 16.4 |
EclipseLink with HSQLDB server has failed in 9 tests (see exceptions).
Comparison of JPA/Database speed - the averages (normalized score, higher is better)
Transaction/Retrieval Size | Few Entities | Many Entities | Average Score | |||
---|---|---|---|---|---|---|
  | OpenJPA Derby embedded | EclipseLink HSQLDB server | OpenJPA Derby embedded | EclipseLink HSQLDB server | OpenJPA Derby embedded | EclipseLink HSQLDB server |
Basic Person Test | 6.7 | 5.4 | 11.4 | 15.8 | 9.1 | 10.6 |
Element Collection Test | 3.5 | 4.8 | 5.4 | failed | 4.5 | 4.8 |
Inheritance Test | 2.8 | failed | 6.9 | failed | 4.8 | failed |
Indexing Test | 11.5 | failed | 13.9 | failed | 12.7 | failed |
Graph (Binary Tree) Test | 2.4 | failed | 3.3 | failed | 2.9 | failed |
Multithreading Test | 8.6 | failed | 8.5 | failed | 8.5 | failed |
All Tests | 6.0 | 5.1 | 8.4 | 15.8 | 7.2 | 8.6 |
The results above show that in general EclipseLink with HSQLDB server is slightly more efficient than OpenJPA with Derby embedded in performing JPA database operations.
Other Head to Head DBMS/JPA Comparisons
OpenJPA with Derby embedded against:
- Oracle Database 11g
- IBM DB2 10
- Microsoft SQL Server 2008
- DataNucleus with Derby embedded
- DataNucleus with H2 embedded
- DataNucleus with HSQLDB embedded
- DataNucleus with SQLite embedded
- DataNucleus with DB4O embedded
- DataNucleus with Derby server
- DataNucleus with H2 server
- DataNucleus with HSQLDB server
- DataNucleus with MySQL server
- DataNucleus with PostgreSQL server
- EclipseLink with Derby embedded
- EclipseLink with H2 embedded
- EclipseLink with HSQLDB embedded
- EclipseLink with Derby server
- EclipseLink with H2 server
- EclipseLink with HSQLDB server
- EclipseLink with MySQL server
- EclipseLink with PostgreSQL server
- Hibernate with Derby embedded
- Hibernate with H2 embedded
- Hibernate with HSQLDB embedded
- Hibernate with Derby server
- Hibernate with H2 server
- Hibernate with HSQLDB server
- Hibernate with MySQL server
- Hibernate with PostgreSQL server
- OpenJPA with H2 embedded
- OpenJPA with HSQLDB embedded
- OpenJPA with Derby server
- OpenJPA with H2 server
- OpenJPA with HSQLDB server
- OpenJPA with MySQL server
- OpenJPA with PostgreSQL server
- ObjectDB embedded
- ObjectDB server
EclipseLink with HSQLDB server against:
- Oracle Database 11g
- IBM DB2 10
- Microsoft SQL Server 2008
- DataNucleus with Derby embedded
- DataNucleus with H2 embedded
- DataNucleus with HSQLDB embedded
- DataNucleus with SQLite embedded
- DataNucleus with DB4O embedded
- DataNucleus with Derby server
- DataNucleus with H2 server
- DataNucleus with HSQLDB server
- DataNucleus with MySQL server
- DataNucleus with PostgreSQL server
- EclipseLink with Derby embedded
- EclipseLink with H2 embedded
- EclipseLink with HSQLDB embedded
- EclipseLink with Derby server
- EclipseLink with H2 server
- EclipseLink with MySQL server
- EclipseLink with PostgreSQL server
- Hibernate with Derby embedded
- Hibernate with H2 embedded
- Hibernate with HSQLDB embedded
- Hibernate with Derby server
- Hibernate with H2 server
- Hibernate with HSQLDB server
- Hibernate with MySQL server
- Hibernate with PostgreSQL server
- OpenJPA with Derby embedded
- OpenJPA with H2 embedded
- OpenJPA with HSQLDB embedded
- OpenJPA with Derby server
- OpenJPA with H2 server
- OpenJPA with HSQLDB server
- OpenJPA with MySQL server
- OpenJPA with PostgreSQL server
- ObjectDB embedded
- ObjectDB server