« The JE DbCacheSize Utility | Main | Netbeans 6.0 and JE »

A User's Experience with the DPL



http://sujitpal.blogspot.com/2007/07/annotation-driven-object-persistence.html

Comments (4)

Warren Henning:

Hi Charles,

First, let me say that I'm really surprised Berkeley DB JE hasn't caught on more in the Java community. Maybe it's because of the license -- isn't it Apache/BSD-incompatible? In other words, say, if you use any Apache Commons code in your product (which is licensed under Apache License v2.0), isn't it impossible to distribute it with BDB JE if you don't pay money for a proprietary license?

Do you know of anyone using BDB JE for high-profile/interesting projects, whether open source or proprietary?

Finally, I'm still not quite sure what to make of the whitepaper that was posted late last year comparing JE and Derby -- in what situations does JE have the greatest performance lead over Derby?

Learning Berkeley DB's API is very different from using JDBC, and I'm still working through the DPL/JE Collections stuff, but it looks very cool. Could you summarize some of the most noteworthy features and benefits of the DPL/Collections stuff for people who haven't used BDB JE before?

Thanks!

Charles Lamb:

Hi Warren,

If you ship any code that uses with JE with source code, then you can ship JE without a revenue-based license.

JE is used in several places. One of the open source places is Archive.org which uses JE for a number of purposes including the Heritrix crawler.

JE and Derby are really two different animals. If you don't need the power/overhead of SQL, then JE is a good option to consider. If you need SQL, then JE won't cut it for you (i.e. consider Derby instead). The white paper is simply trying to compare raw performance of the engine. But the reader must keep in mind that in many ways it is an apples to oranges comparison.

DPL offers straightforward POJO persistence for Java objects and alleviates the need for the user to write marshall/unmarshall code and also maintains the relationships and indexes between objects.

Regards,

Charles Lamb

Warren Henning:

Hi Charles,

A while ago you apparently gave a talk about Direct Persistence Layer - http://blogs.oracle.com/charleslamb/2006/08/27 - did you ever post slides for that? Could you if you haven't?

The Spring framework has stuff to reduce the amount of boilerplate necessary to use JDBC and other relational database technology. Does JE have anything for reducing boilerplate pertaining to opening/closing environments, environment configurations, etc?

Thanks!

Charles Lamb:

Hi Warren,

Here are the slides: http://blogs.oracle.com/charlesLamb/gems/OOW06BDBJE.ppt

DPL is probably the closest thing we have to reducing boilerplate.

Regards,
-cwl

Post a comment

(If you haven't left a comment here before, you may need to be approved by the site owner before your comment will appear. Until then, it won't appear on the entry. Thanks for waiting.)

About This Entry

This page contains a single entry from the blog posted on July 20, 2007 3:00 PM.

The previous post in this blog was The JE DbCacheSize Utility.

The next post in this blog is Netbeans 6.0 and JE.

Many more can be found on the main index page or by looking through the archives.

Top Tags

Powered by
Movable Type and Oracle