Should I use ObjectDB and JDO?

#1

My application is not meeting required performance because JavaDB appears to be my bottleneck.  I require a faster DB.  Surveying the Internet lead me to believe that ObjectDB might be just what I am looking for (to achieve MUCH faster database access).  But, I have a few concerns.

 

It looks like JDO is the preferred API for me (because ObjectDB FAQs lead me to believe it might be faster than JPA because I am storing objects to avoid apparent relative slowness of relational databases).  I want to use annotations, which seems to mean JDO 2.1+ is required.  Does ObjectDB support JDO annotations?

 

I don't see an ObjectDB tutorial using JDO and annotations.  Is there one?

 

I searched for books for JDO and only found 3, and they are 13 years old and don't cover annotations.  Is JDO and object databases (and therefore ObjectDB) a niche-only market?  Should I have concerns that development will deteriorate and at some point in the future I will need to update my application because JDO/object databases/ObjectDB are no longer keeping current?  If they can meet my current needs (EXTREME performance is required) then maybe I can live with a stagnant or dead end database solution, if it can stay functioning in my application, which I assume because it will all be encapsulated in the self contained embedded JAR file in my application.

I new to JDO, object databases, and ObjectDB, so any information and help with the above is much appreciated.  I already have to rewrite an entire database solution, and I don't want to have to do it again because I don't make the "correct" decision now for the new database solution.  =)

 

Thanks!

#2

Hmm, I just found this link:  http://www.objectdb.com/api/java/jdo/annotations, so I see that annotations are available in ObjectDB JDO.

Is the ObjectDB JDO API reference unique to ObjectDB, or is it an exact copy of some JDO 2.x API that I could find at the official JDO API location:  https://db.apache.org/jdo/javadoc.html?  Which version of API spec is the ObjectDB API reference based on?

In other words, which one should I use when coding.  I prefer the official ones, but if ObjectDB is different, then I obviously need to use the ObjectDB reference.

#3

> It looks like JDO is the preferred API for me (because ObjectDB FAQs lead me to believe it might be faster than JPA...

ObjectDB has the same speed whether you use JPA or JDO.

> I don't see an ObjectDB tutorial using JDO and annotations.  Is there one?

Although ObjectDB supports both JPA and JDO, JPA is more popular and most ObjectDB users use JPA, so ObjectDB documentation and tutorials use JPA.

> Is JDO and object databases (and therefore ObjectDB) a niche-only market?  Should I have concerns that development will deteriorate and at some point in the future I will need to update my application because JDO/object databases/ObjectDB are no longer keeping current?

Clearly Object databases are less commonly used than RDBMS, but they have their market, especially when performance is essential. ObjectDB is here to stay, but you can always switch to other JPA/JDO implementations (including object databases) if necessary, using your existing JPA/JDO code.

> Is the ObjectDB JDO API reference unique to ObjectDB, or is it an exact copy of some JDO 2.x API

It is the same JDO. ObjectDB supports most of JDO 2.1 (except sub queries and a few other features, as you can see in the issue tracking).

ObjectDB Support
ObjectDB - Fast Object Database for Java (JPA/JDO)
#4

That is exactly what I needed to know.  Thank you for answering all my questions and with appropriate detail and honesty.

 

I am going to pursue ObjectDB.

#5

I started out with Objectdb JDO and switched to JPA because JPA was more popular and thus receiving more support, and JPA object locking was more capable than JDO's. JPA turned out to be the right choice for me.

I have about 10 years of development experience with GemStone S, moderate experience playing with db4o, and now several years with Objectdb. I have also spent many, many hours over many years comparing DBMS products going back to Itasca.

I absolutely love this product and this company.

I am doing you the same favor as the fellow who told me about Objectdb did me.

 

#6
Thank you!

Post Reply

To post a reply and/or subscribe to update notifications - please login