Win a copy of The Business Blockchain this week in the Cloud forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

Comparing JDBC�, Apache iBATIS, Hibernate Core, Apache OpenJPA, and pureQuery

 
Taariq San
Ranch Hand
Posts: 192
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I assume TopLink was compared as well though not listed, based on an Amazon review.

Did you compare speed? Which of the ORMs is quickest?
[ July 22, 2008: Message edited by: Taariq San ]
 
Roland Barcia
author
Ranch Hand
Posts: 181
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Thank you for the question. We talk about performance testing being important. There are some legal issues with printing results from performance tests. In general, you can make all the frameworks perform well, and some frameworks perform better in certain use cases than others.

If you follow, for example, performance benchmarks for app servers, the leaders change constantly. Performance tests take a more end to end approach, taking into account the UI and other layers of the application.

Certainly, there are performance characteristics for frameworks we discuss. For example, Apache OpenJPA uses byte code enhancement as a build setup to add its persistence behavior, while hibernate uses a runtime approach. Usually, if you can do some stuff at build time, you get some performance boost, especially when queries are executed the first time. Another example, is pureQuery allows you to swap static SQL for dynamic query, which saves a lot of time in the DB layer (even with prepared statement caches, since you can have cache misses).

We did not do a chapter on TopLink, however, the goal of the book was to provide a template for comparison, and one can download the template and evaluate TopLink if desired.
 
Mike Keith
author
Ranch Hand
Posts: 304
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Originally posted by Roland Barcia:
We did not do a chapter on TopLink, however, the goal of the book was to provide a template for comparison, and one can download the template and evaluate TopLink if desired.


Respectfully, how can you do a serious book on persistence and performance and not include TopLink, arguably the seminal and most mature product in the ORM persistence space? There are some very common use cases where TopLink outperforms every other persistence strategy you have listed.
 
Geoff Hambrick
author
Greenhorn
Posts: 22
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Originally posted by Mike Keith:


Respectfully, how can you do a serious book on persistence and performance and not include TopLink, arguably the seminal and most mature product in the ORM persistence space? There are some very common use cases where TopLink outperforms every other persistence strategy you have listed.


We share your pain.

We originally wanted to include chapters on both Toplink and EJB 2.0, especially the latter since I wrote a column called the "EJB Advocate" on developer works that discusses various issues associated with proper exploitation of the framework.

Chapter 1 discusses the History of ORM Mapping and gives proper homage to TopLink (and EJBs). It also explains why we chose the 5 we did -mainly to get the most "modern" of each type of framework that is in wide use.

We decided that the purpose of the book was not to be a "how to" guide for the various technologies (since specific books can do a much better job), but a "when to guide" (as to when each best applies).

The questionnaire that we outline in Chapter 4 and use to evaluate the five frameworks in Chapters 5-9 can be used to evaluate TopLink or any other framework we skipped. But more importantly, it can be used to evaluate new frameworks in the future, so hopefully, the book will be useful long after the five we evaluate have been relegated to history.

Cold comfort, I know, but rest assured that Persistence in the Enterprise is a serious book that covers the issues you will encounter in determining which type of framework best applies in the context of concrete examples.

Ok then, Geoff
 
Mike Keith
author
Ranch Hand
Posts: 304
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Fair enough. But if you were looking at "modern" frameworks then you might have included "EclipseLink", which is the most modern and fully featured of them all. It not only supports JPA mapping of entities to the RDB, but mapping the exact same entity classes to XML schemas to send off to a web service, or even passing them to an SCA-based application as SDO's! :-)
 
Geoff Hambrick
author
Greenhorn
Posts: 22
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Thanks Mike.

We felt Open JPA would get folks into the ballpark of what JPA provides as a general framework, and enable them to download our code samples and try it for themselves.

Then, if they like JPA and are looking for support, they can go looking for commercially available ones.

It might be interesting to post this comment on the developerworks book site so that folks are aware of the availability.

Ok then, Geoff
 
Cameron Wallace McKenzie
author and cow tipper
Saloon Keeper
Posts: 4968
1
Hibernate Spring Tomcat Server
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
One challenge in writing any book is deciding what to leave out.

If authors put everything into a book that they wanted, I doubt very many books would ever actually be completed.

TopLink is a great framework, and indeed, very pervasive.

-Cameron McKenzie
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic