Summary
Apache Derby is an open-source relational database written entirely in Java. Derby has many enterprise-class database features while also offering a light footprint and even embedded use. The latest Derby release includes better server stability and performance features, improved text encoding, and better documentation.
Advertisement
Apache Derby has had a long history as a pure-Java relational database. It started as a product of Cloudscape, which was later purchased by Informix that, in turn, was purchased by IBM. In 2004, IBM made the database's code base available to the Apache foundation under the project name Derby. Having graduated from the incubator phase, Derby is now a full-fledged Apache project. Several projects bundle Derby as a default relational database, including the JDK 6 "Mustang" project.
Due to its illustrious line of enterprise database parentage, Derby includes numerous enterprise-class database features, such as distributed transaction support (XA transactions), database-level encryption, and multiuser client-server operations. Still, Derby is most suitable for small to medium-size deployments, and one of its unique strengths is its embedded mode of operation, requiring no prior database install and maintenance.
The latest Derby release includes improved network server stability, better client memory usage, more performant query processing features, and better handling of non-ASCII text. The new release also comes with better documentation.
Have you used Derby in your projects? If so, what is your experience with Derby?