Apache Derby

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску
Apache Derby
Логотип программы Apache Derby
Тип Реляционная СУБД
Автор Cloudscape Inc (а затем IBM)
Разработчик Apache Software Foundation
Написана на Java
Операционная система Кроссплатформенное ПО
Первый выпуск 1997 и 29 марта 2006[1]
Аппаратная платформа Java Virtual Machine
Последняя версия 10.15.2.0 (1 марта 2020)
Репозиторий svn.apache.org/repos/asf…
Состояние Active
Лицензия Apache License 2.0
Сайт db.apache.org/derby/

Apache Derby — реляционная СУБД, написанная на Java, предназначенная для встраивания в Java-приложения или обработки транзакций в реальном времени. Занимает 2 MB на диске.[4] Распространяется на условиях лицензии Apache 2.0. Ранее известна как IBM Cloudscape. Oracle распространяет те же бинарные файлы под именем Java DB[5].

Технологии Derby

[править | править код]

Встраиваемое ядро базы данных Derby

[править | править код]

Основа технологии базы данных Derby — полнофункциональное встраиваемое ядро реляционной базы данных. JDBC и SQL — это доступные API для него. Поддерживается синтаксис SQL, аналогичный IBM DB2.

Сетевой сервер Derby

[править | править код]

Сетевой сервер Derby добавляет к возможностям ядра СУБД клиент-серверные возможности. Сетевой сервер позволяет клиентам подключаться через TCP/IP, используя стандартный протокол DRDA[англ.]. Сервер сети предоставляет Derby сетевую поддержку JDBC, ODBC /CLI, Perl и PHP.

Встроенный сетевой сервер

[править | править код]

Встроенная база данных может быть также сконфигурирована для работы в качестве гибридной серверно-встраиваемой РСУБД; принимающей TCP/IP соединения от других клиентов в добавление к клиентам на той же JVM.[6]

Утилиты работы с БД

[править | править код]
  • ij — инструмент, позволяющий выполнять SQL-сценарии для любой базы данных JDBC.
  • dblook — инструмент извлечения схемы базы данных Derby.
  • SysInfo — утилита для отображения номера версии и пути к java-классу Derby.
  • KAM Derby JDBC https://sites.google.com/site/jkamderby/

Apache Derby зародилась в компании Cloudscape Inc., находящейся в Окленде, штат Калифорния. Разработку этой Java-СУБД начали в 1996 году Nat Wyatt и Howard Torf. Первый релиз, названный JBMS, был выпущен в 1997 году. Впоследствии продукт был переименован в Cloudscape DB, его релизы выходили примерно каждые полгода.

В 1999 году Informix Software, Inc. приобрела компанию Cloudscape, Inc. В 2001 году все разработки в области баз данных, принадлежащие Informix Software, в том числе и Cloudscape, отошли IBM. СУБД была переименована в IBM Cloudscape и продолжала выпускаться, будучи ориентированной в основном на встроенное использование с Java-продуктами IBM и промежуточным программным обеспечением.

В августе 2004 года IBM передала исходный код в Apache Software Foundation под именем Derby — инкубаторный проект, финансируемый проектом Apache DB.[7] В июле 2005 года проект Derby вышел из инкубатора Apache и в настоящее время разрабатывается в качестве суб-проекта Apache DB верхнего уровня. Перед выходом Derby из инкубатора к проекту также присоединилась Sun с целью использования Derby как компонента своих продуктов[8] и, начиная с релиза Java 6, в декабре 2006 года Sun начала поставлять Derby в составе JDK под именем Java DB.

В марте 2007 года IBM объявила, что отказывается от маркетинга и поддержки продукта Cloudscape, но будет продолжать вносить свой вклад в проект Apache Derby.[9]

Сравнение с другими встроенными SQL базами данных на Java

[править | править код]

С точки зрения скорости выполнения, Derby не показала хороших результатов в сравнении с другими встраиваемыми SQL базами данных, такими как другая открытая и свободная база данных H2.[10][11][12]

Дерби не поддерживает управление конкурентным доступом с помощью многоверсионности (MVCC) в отличие от своих основных конкурентов HyperSQL и H2.

Примечания

[править | править код]
  1. https://projects.apache.org/json/projects/db-derby.json
  2. https://db.apache.org/derby/docs/10.8/adminguide/cadminimportdefaultformat.html
  3. https://db.apache.org/derby/papers/logformats.html
  4. The Apache DB Project. Apache.org. Архивировано из оригинала 5 июля 2012 года.
  5. Java DB — FAQs: «Is Java DB a fork of Apache Derby?» Дата обращения: 21 ноября 2010. Архивировано 16 июля 2011 года.
  6. see Embedded Server Example in http://db.apache.org/derby/docs/10.4/adminguide/ Архивная копия от 13 ноября 2010 на Wayback Machine
  7. Why IBM is open sourcing Cloudscape as Derby. IBM. Архивировано из оригинала 5 июля 2012 года.
  8. Apache Derby graduates with Sun onboard. CNET news.com. Архивировано из оригинала 5 июля 2012 года.
  9. Changes in Cloudscape Availability and Support. IBM. Архивировано из оригинала 5 июля 2012 года.
  10. Hsqldb vs Derby. Ignacio Coloma. Архивировано из оригинала 5 июля 2012 года.
  11. H2 Database Performance. H2 Database. Архивировано из оригинала 5 июля 2012 года.
  12. Benchmark for h2, hypersonic, derby. H2 Database. Дата обращения: 21 ноября 2010. Архивировано 10 мая 2010 года.

Литература

[править | править код]
  • Paul C. Zikopoulo, George Baklarz, Dan Scott. Apache Derby — Off to the Races: Includes Details of IBM Cloudscape. — IBM Press, 6 ноября, 2005. — P. 600. — ISBN 0131855255.