Friday, 20 June 2008

Simple, embedded, OO Database

No I am not talking about Derby or any other sql DB. I am talking about a real Object oriented DB which makes it easier to implement Domain Driven Development.

DB4O is a open source object database for both Java and .net. DB4O stores data in flat files which is not much different than serilization but the strenth lies within the easy of use. DB4O is very easy to set up and use. Even the test drive tutorial is quite enough for learning how to use. So sad that there is no support for JPA. I think if db4o can offer JPA support it will be a great choise for development phases.

I tested db4o for storing and reading mass amount of data and the results were good. Files sizes don't grow fast and the system can handle object relations well. I also prepared an abstract class which can takeover the persistance job from the domain objects and hides away that complexity. I would really love to try and see what can db4o offer in a real project and production environment.