Apache Derby

November 7, 2005

Just started to look at Apache’s Derby project and so far I’m impressed. Derby is an RDBMS written entirely in Java that supports most of SQL 92, some of SQL 99 and can operate either in embedded mode or client/server. My initial reaction is that Derby looks much better and more robust than other embedded Java databases like HypersonicSQL. According to the documentation, you can use Derby three different ways:

  1. Embedded in a single-user Java application. Derby can be almost invisible to the end user because it requires no administration and runs in the same Java virtual machine (JVM) as the application.
  2. Embedded in a multiuser application such as a web server, an application server, or a shared development environment.
  3. Embedded in a server framework. You can use the Network Server with the Network Client driver or a server of your own choice.

Pretty sweet.

Apparently Derby was originally created by Cloudscape. Then Informix bought Cloudscape. Then IBM bought Informix. Then IBM renamed it to Derby and gave it to the Apache Group.