Apache Derby (ранее распространявшаяся как IBM Cloudscape ) — это система управления реляционными базами данных (СУБД), разработанная Apache Software Foundation , которую можно встраивать в программы Java и использовать для онлайн-обработки транзакций . Он занимает 3,5 МБ дискового пространства. [1]
Apache Derby разработан как проект с открытым исходным кодом под лицензией Apache 2.0 . Какое-то время Oracle распространяла те же двоичные файлы под названием Java DB . [2] В июне 2015 года они объявили, что для JDK 9 больше не будут этого делать. [3]
Apache Derby зародился в Cloudscape Inc, стартапе из Окленда , штат Калифорния , основанном в 1996 году Натом Вяттом и Говардом Торфом для разработки технологии баз данных Java . Первый выпуск ядра базы данных, тогда называвшегося JBMS, состоялся в 1997 году. Впоследствии продукт был переименован в Cloudscape, и выпуски выпускались примерно каждые шесть месяцев.
В 1999 году Informix Software, Inc. приобрела Cloudscape, Inc. [4] В 2001 году IBM приобрела активы баз данных Informix Software, включая Cloudscape. Ядро базы данных было переименовано в IBM Cloudscape, и выпуски продолжались, в основном ориентированные на встроенное использование с продуктами IBM и промежуточным программным обеспечением.
В августе 2004 года IBM предоставила код Apache Software Foundation как Derby, проект-инкубатор, спонсируемый проектом Apache DB. [5] В июле 2005 года проект Derby вышел из инкубатора Apache и в настоящее время разрабатывается как подпроект проекта верхнего уровня БД в Apache. Еще до выхода Derby из инкубационного состояния компания Sun присоединилась к проекту Derby с намерением использовать Derby в качестве компонента в своих собственных продуктах [6] , а с выпуском Java 6 в декабре 2006 года Sun начала упаковывать Derby в JDK под торговой маркой Java. БД.
В марте 2007 года IBM объявила, что прекращает маркетинг и поддержку продукта Cloudscape, но продолжит вносить свой вклад в проект Apache Derby. [7]
База данных Java DB — это поддерживаемый Oracle дистрибутив Apache Derby. [8]
Ядро технологии, механизм базы данных Derby, представляет собой полнофункциональную реляционную встроенную базу данных, поддерживающую JDBC и SQL в качестве API программирования. Он использует синтаксис SQL IBM Db2 .
Сетевой сервер Derby расширяет возможности ядра базы данных Derby, предоставляя традиционные функции клиентского сервера. Сетевой сервер позволяет клиентам подключаться через TCP/IP, используя стандартный протокол DRDA . Сетевой сервер позволяет движку Derby поддерживать сетевые JDBC, ODBC / CLI , Perl .
Встроенную базу данных можно настроить для работы в качестве гибридного сервера/встроенной СУБД; также принимать соединения TCP/IP от других клиентов в дополнение к клиентам в той же JVM. [9]