-->
These old forums are deprecated now and set to read-only. We are waiting for you on our new forums!
More modern, Discourse-based and with GitHub/Google/Twitter authentication built-in.

All times are UTC - 5 hours [ DST ]



Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 12 posts ] 
Author Message
 Post subject: Ouch! Hibernate performance benchmark
PostPosted: Thu Mar 31, 2005 3:01 pm 
Senior
Senior

Joined: Tue Mar 02, 2004 6:17 pm
Posts: 151
Throwing some coal into the fire: http://www.polepos.org/

It seems to imply a serious performance overhead when using Hibernate/mysql versus JDBC/mysql.

Don't shoot the messenger :) I just thought people might want to discuss this.


Top
 Profile  
 
 Post subject:
PostPosted: Thu Mar 31, 2005 3:22 pm 
Hibernate Team
Hibernate Team

Joined: Mon Aug 25, 2003 9:11 pm
Posts: 4592
Location: Switzerland
This is of course not a Hibernate benchmark, but only an unverified test done by someone who has never used Hibernate before (as he writes in his blog entry). As the "winner" of this benchmark also posted this result here today I assume the usual marketing spiel. Case closed...


Top
 Profile  
 
 Post subject:
PostPosted: Thu Mar 31, 2005 3:26 pm 
Senior
Senior

Joined: Tue Mar 02, 2004 6:17 pm
Posts: 151
christian wrote:
This is of course not a Hibernate benchmark, but only an unverified test done by someone who has never used Hibernate before (as he writes in his blog entry). As the "winner" of this benchmark also posted this result here today I assume the usual marketing spiel. Case closed...


Huh? I got this post from java.net... I'm in no way related to any of these guys. Again, I only brought it up because it was Hibernate related and people might want to discuss it. Personally I was wondering whether you guys had some benchmarks of your own to counter this. I ask simply because I am trying to set my expectations right here... what sort of performance increase or decrease am I to expect when using Hibernate?

Gili


Top
 Profile  
 
 Post subject:
PostPosted: Thu Mar 31, 2005 3:26 pm 
Hibernate Team
Hibernate Team

Joined: Tue Aug 26, 2003 12:50 pm
Posts: 5130
Location: Melbourne, Australia
Just to confirm, this seems to be a benchmark sponsored by a particular OODBMS vendor to intentionally cast Hibernate in a negative light.

There is no way I am going to let anyone on the Hibernate team waste days trying to evaluate and debunk such nonsense. We have real work to do.


Top
 Profile  
 
 Post subject:
PostPosted: Thu Mar 31, 2005 3:28 pm 
CGLIB Developer
CGLIB Developer

Joined: Thu Aug 28, 2003 1:44 pm
Posts: 1217
Location: Vilnius, Lithuania
This kind of tests can not be trusted for many reasons, this is one of reasons too:
"The authors of the current test implementations do not see themselves as experts for SQL, JDO or Hibernate or for any of the database engines used."


Top
 Profile  
 
 Post subject:
PostPosted: Thu Mar 31, 2005 3:29 pm 
Hibernate Team
Hibernate Team

Joined: Tue Aug 26, 2003 12:50 pm
Posts: 5130
Location: Melbourne, Australia
Gili, Christian is not saying you are related to the "benchmark". There was another forum post made about this today.

Understand, that since we became the clear leaders in Java persistence, everyone and their dog tries to take shots at us, and we really don't have the time to waste responding.

For example, my response to the Versant FUD wasted really a full two days of my time. I simply can't spare that kind of investment in this sort of nonsense stuff.

(And, if we sound frustrated, its 'cos this stuff *is* frustrating and irritating, and we've had to live with it for three years now.)


Top
 Profile  
 
 Post subject:
PostPosted: Thu Mar 31, 2005 3:34 pm 
CGLIB Developer
CGLIB Developer

Joined: Thu Aug 28, 2003 1:44 pm
Posts: 1217
Location: Vilnius, Lithuania
BTW post it to TSS next time, I will be happy to discuss it in my way.


Top
 Profile  
 
 Post subject:
PostPosted: Thu Mar 31, 2005 3:35 pm 
Senior
Senior

Joined: Tue Mar 02, 2004 6:17 pm
Posts: 151
gavin wrote:
Gili, Christian is not saying you are related to the "benchmark". There was another forum post made about this today.

Understand, that since we became the clear leaders in Java persistence, everyone and their dog tries to take shots at us, and we really don't have the time to waste responding.

For example, my response to the Versant FUD wasted really a full two days of my time. I simply can't spare that kind of investment in this sort of nonsense stuff.

(And, if we sound frustrated, its 'cos this stuff *is* frustrating and irritating, and we've had to live with it for three years now.)


Ah! Thank you for the clarification Gavin. I understand now :)

Keep up the good work!
Gili


Top
 Profile  
 
 Post subject:
PostPosted: Thu Mar 31, 2005 3:55 pm 
Hibernate Team
Hibernate Team

Joined: Tue Aug 26, 2003 12:50 pm
Posts: 5130
Location: Melbourne, Australia
ROFL.

I spent exactly five minutes on this. (Looked briefly at the code without running it.)


The Hibernate code is using iterate() instead of find() or list() to execute queries. (!) The author really *didn't* know anything about Hibernate.

It also appears to me that the scope of the Hibernate Session is too large, so memory consumption would be killing the Hibernate results. (I could be wrong on this, I would need to understand the benchmark a little better.)

But it doesn't look like its worth paying anymore attention to this.


Top
 Profile  
 
 Post subject:
PostPosted: Thu Mar 31, 2005 4:42 pm 
Hibernate Team
Hibernate Team

Joined: Thu Dec 18, 2003 9:55 am
Posts: 1977
Location: France
+ the inheritance test is using the worst mapping strategy for performance (joined-subclass)
+ the delete test isn't using last bulk delete feature
+ massive insert are done saving up to 100 000 objects in the session without "clearing" it (as Gavin said --> memory consumption)

i've wasted 5 minutes of my time too, this is too much for today :)

_________________
Anthony,
Get value thanks to your skills: http://www.redhat.com/certification


Top
 Profile  
 
 Post subject:
PostPosted: Thu Mar 31, 2005 5:08 pm 
Hibernate Team
Hibernate Team

Joined: Mon Aug 25, 2003 9:11 pm
Posts: 4592
Location: Switzerland
Yeah, stop! :) Carl will be around any minute and ask why we don't put it on the front page or why we don't waste more time...


Top
 Profile  
 
 Post subject:
PostPosted: Fri Apr 01, 2005 11:19 am 
Regular
Regular

Joined: Fri Sep 17, 2004 10:51 am
Posts: 61
Location: Rimini, Italy
Perhaps I can do my contribution on this, since I'm right now working on a migration of an old e-commerce project from servlet-EJB1 to webwork-hibernate.

I've completed the migration of the backend, removing all the uses of EJB entities in favor of simple POJOs hibernate-managed, but still keeping EJB stateless as manager (façade pattern). I'm still using servlet for now.

Since I keeped the old project, I can performance test the before and after the cure ;) My first tests aren't so amazing as I expected, but I think I've still optimization to do. Do you have any suggestion on how to run this test ? Is anyone interested in the results ?

_________________
--
Marco


Top
 Profile  
 
Display posts from previous:  Sort by  
Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 12 posts ] 

All times are UTC - 5 hours [ DST ]


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum

Search for:
© Copyright 2014, Red Hat Inc. All rights reserved. JBoss and Hibernate are registered trademarks and servicemarks of Red Hat, Inc.