Skip to main content

Apache Derby as Local Web Cache

Posted by davidvc on December 13, 2005 at 5:08 PM PST

I'm here in San Diego attending ApacheCon. This is my first
ApacheCon, and in general I like what I see. It's very low-key,
generally laid-back, and there is a large focus on getting to know
each other. I attended my first “key signing party”
yesterday. This is advertised as an important way to grow Apache's
“web of trust” by getting others to sign your PGP key,
but a great side effect is that this is one of the best ways I have
seen to get us introverted geeks to actually pull our heads up from
our computers and say hello to each other.

We have been working on a great demo for Derby, showing how it can
be loaded from a web browser and run as a local store or cache that
runs on the client machine. We've been excited about this for a
while, once you get that you can do this, it opens the door to all
sorts of ideas. Francois Orsini, one of the engineers here at Sun,
who worked at Cloudscape years ago, dusted off the demo he did in
1998 and put a new AJAX paint-job on it.

We demonstrated it at Tim Bray's keynote today, and it was really
. We showed not only that the database runs
invisibly (it's hard to believe that one is back there), but that,
because it's local, every field change can get stored immediately.
If you crash the browser in the middle of a form page, the data you
typed in is not lost. It also means you can run applications without
being connected to the Internet, storing data locally on the client

It looks like Mozilla has been looking for something like this,
and others are interested as well. A lot of people are asking for
access to the source, so we're talking about putting it into a
samples directory of Apache Derby so not only can you get it, you can
also improve it and make it better!

I do want to put in a big Thank You to Francois, he has worked
very hard on this demo and it's really helping people get the “aha”
of what you can do with a small footprint Java database with a little
creativity. Web-based apps with fast, secure, robust, client-side
relational storage – wow.

The other announcement was the new name for Sun's supported
distribution of Apache Derby: Java DB (or “open Java DB”).
Some folks have asked me why we chose this name, and really I don't
know. Sun's just too big a company. I do know that Apache owns the
trademark “Apache Derby” and the only distribution that
can use that name is the one you get off the Apache web site, so we
had to give it some name. I liked Bernt
suggestion that we call it Cardiff.