views:

755

answers:

4

Could you advise the best open source ODMBS (object oriented database management system) for Java application?

I understand that usually there is no one definite answer for such questions. So the main points I look for are:

  1. good documentation/ support / community
  2. reliability
  3. performance

UPDATE:

I see db4o has a long history, the biggest java ODBMS community and dual-licensing. I consider this to be a good sign of good documentation/ support/ maturity.

Prevayler looks really awesome but only if you are ok with storing (caching) all your DB in the memory. Which can be not suitable for big DBs with a lot of rarely queried data.

A: 

Sun's gotten behind MySQL. It's not a bad choice. I think the docs are good.

I use MySQL, but my preference is PostgreSQL. I like the features, the docs, the admin console. For the life of me, I can't understand why Sun paid $1B for MySQL when they had PostgreSQL. I guess they thought the brand was better.

My third choice would be Hypersonic.

Fourth is Derby, simply because it ships with JDK 6.

duffymo
None of these is ODBMS, they are all RDBMS.
Dev er dev
how stupid of me. i read too quickly. thanks for the correction.
duffymo
actually postgresql has some minor object db stuff included. I don't claim anything amazing here, but it has some stuff :)
Arthur Thomas
PostgreSQL is technically an ORDBMS. It (can) uses objects but it still builds the links between the objects(unless the objects has children) in a relational model.
WolfmanDragon
+5  A: 

You can take a look at prevayler, which is an interesting concept.

For more mainstream take a look at db4o. You can alsa find good comparison here.

Dev er dev
Marko, did you use Prevayler? Could you answer my question about it? http://stackoverflow.com/questions/454294/what-are-synchronizing-strategies-for-prevayler
Sergey
How does it scale? If everything is in memory the scaling should be horrid. If not sign me up!
WolfmanDragon
A: 

I do some work on the jdbm project project - it's not super-full featured, but I find that it often provides exactly the level of functionality that I'm looking for in small apps.

Kevin Day
A: 

Why do you want an object DBMS per se? If you're looking for the database functions in particular, there are lots of free Object-Relational mapping frameworks.

Otherwise Wikipedia has a nice comparison list.

Charlie Martin
I want to avoid possible performance loss of ORM + RDBMS solution.
Sergey