Apache Derby (previously distributed as IBM Cloudscape) is a
relational database management system
A relational database is a (most commonly digital) database based on the relational model of data, as proposed by E. F. Codd in 1970. A system used to maintain relational databases is a relational database management system (RDBMS). Many relatio ...
(RDBMS) developed by the
Apache Software Foundation
The Apache Software Foundation (ASF) is an American nonprofit corporation (classified as a 501(c)(3) organization in the United States) to support a number of open source software projects. The ASF was formed from a group of developers of the A ...
that can be embedded in
Java
Java (; id, Jawa, ; jv, ꦗꦮ; su, ) is one of the Greater Sunda Islands in Indonesia. It is bordered by the Indian Ocean to the south and the Java Sea to the north. With a population of 151.6 million people, Java is the world's List ...
programs and used for
online transaction processing In online transaction processing (OLTP), information systems typically facilitate and manage transaction-oriented applications. This is contrasted with online analytical processing.
The term "transaction" can have two different meanings, both of wh ...
. It has a 3.5
MB disk-space footprint.
Apache Derby is developed as an
open source
Open source is source code that is made freely available for possible modification and redistribution. Products include permission to use the source code, design documents, or content of the product. The open-source model is a decentralized sof ...
project under the
Apache 2.0 license. For a time,
Oracle
An oracle is a person or agency considered to provide wise and insightful counsel or prophetic predictions, most notably including precognition of the future, inspired by deities. As such, it is a form of divination.
Description
The word '' ...
distributed the same binaries under the name Java DB. In June 2015 they announced that for JDK 9 they would no longer be doing so.
History
Apache Derby originated at Cloudscape Inc, an
Oakland
Oakland is the largest city and the county seat of Alameda County, California, United States. A major West Coast port, Oakland is the largest city in the East Bay region of the San Francisco Bay Area, the third largest city overall in the Bay A ...
,
California
California is a U.S. state, state in the Western United States, located along the West Coast of the United States, Pacific Coast. With nearly 39.2million residents across a total area of approximately , it is the List of states and territori ...
, start-up founded in 1996 by Nat Wyatt and Howard Torf to develop Java
database
In computing, a database is an organized collection of data stored and accessed electronically. Small databases can be stored on a file system, while large databases are hosted on computer clusters or cloud storage. The design of databases sp ...
technology. The first release of the database engine, then called JBMS, was in 1997. Subsequently, the product was renamed Cloudscape and releases were made about every six months.
In 1999
Informix
IBM Informix is a product family within IBM's Information Management division that is centered on several relational database management system (RDBMS) offerings. The Informix products were originally developed by Informix Corporation, whose ...
Software, Inc., acquired Cloudscape, Inc. In 2001
IBM acquired the database assets of Informix Software, including Cloudscape. The database engine was re-branded to IBM Cloudscape and releases continued, mainly focusing on embedded use with IBM's Java products and middleware.
In August 2004 IBM contributed the code to the Apache Software Foundation as Derby, an incubator project sponsored by the
Apache DB project. In July 2005 the Derby project graduated from the Apache incubator and is now being developed as a sub-project of the
DB Top Level Project at Apache. Prior to Derby's graduation from incubation, Sun joined the Derby project with an intent to use Derby as a component in their own products, and with the release of Java 6 in December 2006, Sun started packaging Derby in the
JDK
The Java Development Kit (JDK) is a distribution of Java Technology by Oracle Corporation. It implements the Java Language Specification (JLS) and the Java Virtual Machine Specification (JVMS) and provides the Standard Edition (SE) of the Java ...
branded as Java DB.
In March 2007 IBM announced that they would withdraw marketing and support for the Cloudscape product, but would continue to contribute to the Apache Derby project.
The Java DB database is Oracle's supported distribution of Apache Derby.
Technologies
Derby embedded database engine
The core of the technology, Derby's database engine, is a full-functioned relational embedded database-engine, supporting
JDBC
Java Database Connectivity (JDBC) is an application programming interface (API) for the programming language Java, which defines how a client may access a database. It is a Java-based data access technology used for Java database connectivity. I ...
and
SQL as programming APIs. It uses
IBM Db2
Db2 is a family of data management products, including database servers, developed by IBM. It initially supported the relational model, but was extended to support object–relational features and non-relational structures like JSON a ...
SQL syntax.
Derby Network Server
The Derby network server increases the reach of the Derby database engine by providing traditional client server functionality. The network server allows clients to connect over TCP/IP using the standard
DRDA
Distributed Relational Database Architecture (DRDA) is a database interoperability standard from The Open Group.
DRDA describes the architecture for distributed relational databases. It defines the rules for accessing the distributed data, but it ...
protocol. The network server allows the Derby engine to support networked JDBC,
ODBC
In computing, Open Database Connectivity (ODBC) is a standard application programming interface (API) for accessing database management systems (DBMS). The designers of ODBC aimed to make it independent of database systems and operating systems. An ...
/
CLI CLI may refer to:
Computing
* Call Level Interface, an SQL database management API
* Command-line interface, of a computer program
* Command-line interpreter or command language interpreter; see List of command-line interpreters
* CLI (x86 instruc ...
,
Perl
Perl is a family of two high-level, general-purpose, interpreted, dynamic programming languages. "Perl" refers to Perl 5, but from 2000 to 2019 it also referred to its redesigned "sister language", Perl 6, before the latter's name was offici ...
.
Embedded Network Server
An embedded database can be configured to act as a hybrid server/embedded RDBMS; to also accept TCP/IP connections from other clients in addition to clients in the same JVM.
[see Embedded Server Example i]
http://db.apache.org/derby/docs/10.4/adminguide/
/ref>
Database utilities
* ij: a tool that allows SQL scripts to be executed against any JDBC database.
* dblook: Schema extraction tool for a Derby database.
* sysinfo: Utility to display version numbers and class path.
See also
* List of relational database management systems
This is a list of relational database management systems.
List of software
* 4th Dimension
*Access Database Engine (formerly known as Jet Database Engine)
*Adabas D
*Airtable
*Apache Derby
*Apache Ignite
* Aster Data
*Amazon Aurora
*Altibase
* CA ...
* Comparison of relational database management systems
The following tables compare general and technical information for a number of relational database management systems. Please see the individual products' articles for further information. Unless otherwise specified in footnotes, comparisons are b ...
* H2
* HSQLDB
HSQLDB (''Hyper SQL Database'') is a relational database management system written in Java. It has a JDBC driver and supports a large subset of SQL-92, SQL:2008, SQL:2011, and SQL:2016 standards. It offers a fast, small (around 1300 kilobyte ...
References
Bibliography
*
External links
*
Internals of Derby, An Open Source Pure Java Relational Database Engine
deployable in an embedded OSGi
OSGi is an open specification and open source project under the Eclipse Foundation. It is a continuation of the work done by the OSGi Alliance (formerly known as the Open Services Gateway initiative), which was an open standards organization for ...
environment
Oracle Java DB Site
Why IBM is open sourcing Cloudscape as Derby
IBM developerWorks site
Compliance matrix with SQL 2003
Configure and Install Derby Database
{{IBM FOSS
Derby
Derby ( ) is a city and unitary authority area in Derbyshire, England. It lies on the banks of the River Derwent in the south of Derbyshire, which is in the East Midlands Region. It was traditionally the county town of Derbyshire. Derby gai ...
Free database management systems
Free software programmed in Java (programming language)
IBM software
Software using the Apache license