Apache Derby

Поделись знанием:
Перейти к: навигация, поиск
Apache Derby
Тип

Реляционная СУБД

Автор

Cloudscape Inc (а затем IBM)

Разработчик

Apache Software Foundation

Написана на

Java

Операционная система

Кроссплатформенное ПО

Последняя версия

10.10.2.0 (17 апреля 2014)

Состояние

Active

Лицензия

Apache License 2.0

Сайт

[db.apache.org/derby/ he.org/derby/]

К:Википедия:Статьи без изображений (тип: не указан)

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





Технологии Derby

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

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

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

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

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

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

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

  • ij — инструмент, позволяющий выполнять SQL-сценарии для любой базы данных JDBC.
  • dblook — инструмент извлечения схемы базы данных Derby.
  • SysInfo — утилита для отображения номера версии и пути к java-классу Derby.
  • KAM Derby JDBC 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.[4] В июле 2005 года проект Derby вышел из инкубатора Apache и в настоящее время разрабатывается в качестве суб-проекта Apache DB верхнего уровня. Перед выходом Derby из инкубатора к проекту также присоединилась Sun с целью использования Derby как компонента своих продуктов[5] и, начиная с релиза Java 6, в декабре 2006 года Sun начала поставлять Derby в составе JDK под именем Java DB.

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

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

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

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

См. также

Напишите отзыв о статье "Apache Derby"

Примечания

  1. [db.apache.org/derby/ The Apache DB Project]. Apache.org. [www.webcitation.org/68uvJ1bef Архивировано из первоисточника 5 июля 2012].
  2. [developers.sun.com/javadb/features/faqs.jsp#1q2 Java DB — FAQs: «Is Java DB a fork of Apache Derby?»]
  3. see Embedded Server Example in [db.apache.org/derby/docs/10.4/adminguide/ db.apache.org/derby/docs/10.4/adminguide/]
  4. [www.ibm.com/developerworks/data/library/techarticle/dm-0410prial/ Why IBM is open sourcing Cloudscape as Derby]. IBM. [www.webcitation.org/68uvJd94D Архивировано из первоисточника 5 июля 2012].
  5. [news.com.com/Apache+Derby+graduates+with+Sun+onboard/2100-7344_3-5818473.html Apache Derby graduates with Sun onboard]. CNET news.com. [www.webcitation.org/68uvKOW9N Архивировано из первоисточника 5 июля 2012].
  6. [www-1.ibm.com/support/docview.wss?rs=636&uid=swg21256502 Changes in Cloudscape Availability and Support]. IBM. [www.webcitation.org/68uvLGyc6 Архивировано из первоисточника 5 июля 2012].
  7. [icoloma.blogspot.com/2007/01/hsqldb-vs-derby.html Hsqldb vs Derby]. Ignacio Coloma. [www.webcitation.org/68uvLsuzE Архивировано из первоисточника 5 июля 2012].
  8. [www.h2database.com/html/performance.html H2 Database Performance]. H2 Database. [www.webcitation.org/68uvMUrsE Архивировано из первоисточника 5 июля 2012].
  9. [groups.google.com/group/h2-database/browse_thread/thread/55a7558563248148 Benchmark for h2, hypersonic, derby]. H2 Database.

Библиография

Ссылки

  • [db.apache.org/derby/ Apache Derby Project] (англ.)
  • [www-306.ibm.com/software/data/cloudscape/ Сайт IBM Cloudscape Site] (англ.)
  • [db.apache.org/derby/binaries/ApacheDerbyInternals_1_1.pdf Internals of Derby, An Open Source Pure Java Relational Database Engine] поставляется со встраиваемой средой OSGi
  • [developers.sun.com/javadb/ Сайт Sun Microsystems Java DB] (англ.)
  • [folk.ntnu.no/andersmo/derby_project_report.pdf Apache Derby SMP scalability] (англ.)
  • [www.jpab.org/Derby.html Apache Derby performance results in the JPA Benchmark] (англ.)
  • Разработка при помощи Apache Derby — тройной выигрыш: (рус.)
    • [www.ibm.com/developerworks/ru/library/os-ad-trifecta1/ Введение в Apache Derby]
    • [www.ibm.com/developerworks/ru/library/os-ad-trifecta2/index.html Разработка баз данных при помощи Apache Derby. ч.1], [www.ibm.com/developerworks/ru/library/os-ad-trifecta3/index.html ч.2], [www.ibm.com/developerworks/ru/library/os-ad-trifecta4/index.html ч.3], [www.ibm.com/developerworks/ru/library/os-ad-trifecta6/index.html ч.5], [www.ibm.com/developerworks/ru/library/os-ad-trifecta7/index.html ч.6], [www.ibm.com/developerworks/ru/library/os-ad-trifecta8/index.html ч.7]
    • [www.ibm.com/developerworks/ru/library/os-ad-trifecta9/index.html Разработка баз данных на Java при помощи Apache Derby, ч. 1], [www.ibm.com/developerworks/ru/library/os-ad-trifecta10/index.html ч.2], [www.ibm.com/developerworks/ru/library/os-ad-trifecta11/index.html ч.3], [www.ibm.com/developerworks/ru/library/os-ad-trifecta14/index.html ч.6]
    • [sites.google.com/site/jkamderby/ KAM Derby JDBC]

Отрывок, характеризующий Apache Derby

Борис первый узнал известие о переходе французскими войсками Немана и благодаря этому имел случай показать некоторым важным лицам, что многое, скрытое от других, бывает ему известно, и через то имел случай подняться выше во мнении этих особ.

Неожиданное известие о переходе французами Немана было особенно неожиданно после месяца несбывавшегося ожидания, и на бале! Государь, в первую минуту получения известия, под влиянием возмущения и оскорбления, нашел то, сделавшееся потом знаменитым, изречение, которое самому понравилось ему и выражало вполне его чувства. Возвратившись домой с бала, государь в два часа ночи послал за секретарем Шишковым и велел написать приказ войскам и рескрипт к фельдмаршалу князю Салтыкову, в котором он непременно требовал, чтобы были помещены слова о том, что он не помирится до тех пор, пока хотя один вооруженный француз останется на русской земле.
На другой день было написано следующее письмо к Наполеону.
«Monsieur mon frere. J'ai appris hier que malgre la loyaute avec laquelle j'ai maintenu mes engagements envers Votre Majeste, ses troupes ont franchis les frontieres de la Russie, et je recois a l'instant de Petersbourg une note par laquelle le comte Lauriston, pour cause de cette agression, annonce que Votre Majeste s'est consideree comme en etat de guerre avec moi des le moment ou le prince Kourakine a fait la demande de ses passeports. Les motifs sur lesquels le duc de Bassano fondait son refus de les lui delivrer, n'auraient jamais pu me faire supposer que cette demarche servirait jamais de pretexte a l'agression. En effet cet ambassadeur n'y a jamais ete autorise comme il l'a declare lui meme, et aussitot que j'en fus informe, je lui ai fait connaitre combien je le desapprouvais en lui donnant l'ordre de rester a son poste. Si Votre Majeste n'est pas intentionnee de verser le sang de nos peuples pour un malentendu de ce genre et qu'elle consente a retirer ses troupes du territoire russe, je regarderai ce qui s'est passe comme non avenu, et un accommodement entre nous sera possible. Dans le cas contraire, Votre Majeste, je me verrai force de repousser une attaque que rien n'a provoquee de ma part. Il depend encore de Votre Majeste d'eviter a l'humanite les calamites d'une nouvelle guerre.
Je suis, etc.
(signe) Alexandre».
[«Государь брат мой! Вчера дошло до меня, что, несмотря на прямодушие, с которым соблюдал я мои обязательства в отношении к Вашему Императорскому Величеству, войска Ваши перешли русские границы, и только лишь теперь получил из Петербурга ноту, которою граф Лористон извещает меня, по поводу сего вторжения, что Ваше Величество считаете себя в неприязненных отношениях со мною, с того времени как князь Куракин потребовал свои паспорта. Причины, на которых герцог Бассано основывал свой отказ выдать сии паспорты, никогда не могли бы заставить меня предполагать, чтобы поступок моего посла послужил поводом к нападению. И в действительности он не имел на то от меня повеления, как было объявлено им самим; и как только я узнал о сем, то немедленно выразил мое неудовольствие князю Куракину, повелев ему исполнять по прежнему порученные ему обязанности. Ежели Ваше Величество не расположены проливать кровь наших подданных из за подобного недоразумения и ежели Вы согласны вывести свои войска из русских владений, то я оставлю без внимания все происшедшее, и соглашение между нами будет возможно. В противном случае я буду принужден отражать нападение, которое ничем не было возбуждено с моей стороны. Ваше Величество, еще имеете возможность избавить человечество от бедствий новой войны.
(подписал) Александр». ]


13 го июня, в два часа ночи, государь, призвав к себе Балашева и прочтя ему свое письмо к Наполеону, приказал ему отвезти это письмо и лично передать французскому императору. Отправляя Балашева, государь вновь повторил ему слова о том, что он не помирится до тех пор, пока останется хотя один вооруженный неприятель на русской земле, и приказал непременно передать эти слова Наполеону. Государь не написал этих слов в письме, потому что он чувствовал с своим тактом, что слова эти неудобны для передачи в ту минуту, когда делается последняя попытка примирения; но он непременно приказал Балашеву передать их лично Наполеону.
Выехав в ночь с 13 го на 14 е июня, Балашев, сопутствуемый трубачом и двумя казаками, к рассвету приехал в деревню Рыконты, на французские аванпосты по сю сторону Немана. Он был остановлен французскими кавалерийскими часовыми.
Французский гусарский унтер офицер, в малиновом мундире и мохнатой шапке, крикнул на подъезжавшего Балашева, приказывая ему остановиться. Балашев не тотчас остановился, а продолжал шагом подвигаться по дороге.
Унтер офицер, нахмурившись и проворчав какое то ругательство, надвинулся грудью лошади на Балашева, взялся за саблю и грубо крикнул на русского генерала, спрашивая его: глух ли он, что не слышит того, что ему говорят. Балашев назвал себя. Унтер офицер послал солдата к офицеру.
Не обращая на Балашева внимания, унтер офицер стал говорить с товарищами о своем полковом деле и не глядел на русского генерала.
Необычайно странно было Балашеву, после близости к высшей власти и могуществу, после разговора три часа тому назад с государем и вообще привыкшему по своей службе к почестям, видеть тут, на русской земле, это враждебное и главное – непочтительное отношение к себе грубой силы.
Солнце только начинало подниматься из за туч; в воздухе было свежо и росисто. По дороге из деревни выгоняли стадо. В полях один за одним, как пузырьки в воде, вспырскивали с чувыканьем жаворонки.