Embedding the db4o Object-Oriented Database
OO databases provide the developer with flexibility not so easily gotten with an RDBMS. In particular, you can design complex, deep object structures, persist them to a database and not have to concern yourself with the translation between the object model and the relational model.
The OO database db4o's simple-to-grasp API did not hinder our building indexing structures in the database side by side with the actual data. Though the binary tree and trie indexes we chose were uncomplicated, they demonstrated that the developer is free to augment a database with custom indexing and navigation structures of arbitrary complexity. So, we can tailor-make an organization scheme that fits the application's requirements of its data, and we can design it using plain-old objects—Java or Mono/.NET. Best of all, db4o is open-source, so there's nothing stopping you from grabbing it for your next database application. For more information concerning db4o, see www.db4objects.com.
Rick Grehan's articles have appeared in Byte, Embedded Systems Journal, JavaPro, InfoWorld, Microprocessor Report and several other journals. He is coauthor of three books: one on remote procedure calls, another on embedded systems and a third on object-oriented Java databases. Currently, he is QA Lead at Compuware's NuMega Labs.