db4o

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до навігації Перейти до пошуку

db4o (від англ. database for objects — база даних для об'єктів) — вбудовувана система керування базами даних для об'єктів із відкритим вихідним кодом. Для некомерційного користування доступна під ліцензією GPL. Оскільки СКБД призначена для збереження об'єктів, її повноцінна реалізація можлива тільки в мовах програмування, які використовують рефлексію. Версія 5.2 підтримує технології Java, .NET Framework і Mono.

Історія[ред. | ред. код]

Термін «об'єктно-орієнтовані системи баз даних» з'явився приблизно в 1985 році, хоча перші наукові розробки в цій галузі почалися в середині 1970 років.

Перші комерційні об'єктні системи керування базами даних з'явилися в 1990-их роках.

Друга хвиля зростання спостерігалася в першому десятилітті XXI століття, коли на ринку з'явилися об'єктно-орієнтовані бази даних, написані повністю об'єктно-орієнтованою мовою. Db4o є прикладом таких систем, повністю написаним на Java і С#. Розробку проєкту розпочав 2000 року головний архітектор Карл Розенберг, поширення розпочато 2001 року. Db4o від перших днів підтримали близько 100 співробітників і користувачів спільноти, і вже тоді, ще до запуску в корпоративну мережу, він мав успіх у використанні в корпоративних та академічних застосуваннях.

2008 року db4o купила компанія Versant[en] і почала поширювати під подвійною ліцензією: комерційною і GNU GPL. З моменту початкового запуску db4o була суттєво покращена.

Місце у світі баз даних[ред. | ред. код]

Db4o підтримує модель об'єктно-орієнтованої бази даних. Розроблювані на базі db4o системи не вимагають створення окремої моделі даних, модель класів програми визначається структурою даних у базі db4o.

Розробники, які використовують реляційні бази даних, можуть застосовувати db4o як додатковий інструмент. Обмін даними db4o-RDBMS можна реалізувати за допомогою db4o Replication System (dRS). Також dRS може використовувати для переміщення між об'єктною (db4o) та реляційною технологіями (RDBMS).

Особливості[ред. | ред. код]

Однорядкова база даних[ред. | ред. код]

Db4o містить функцію, яка дозволяє зберігати будь-який об'єкт з єдиною командою:

objectContainer.store(new SomeClass());

Усі поля об'єкта зберігаються автоматично. Для окремих типів можна писати власні обробники[1].

Вбудовуваність[ред. | ред. код]

Db4o проєктується так, що вона є вкладеною в інші програмні компоненти, повністю невидимою для користувача. Тому db4o не потребує ніякого окремого інсталяційного механізму.

Режим «клієнт-сервер»[ред. | ред. код]

Режим «клієнт-сервер» дозволяє db4o підтримувати зв'язок між клієнтськими програмами та сервером. Db4o користується TCP/IP для комунікацій «клієнт-сервер» та дозволяє налаштовувати номер порту. Комунікація здійснюється через запит.

Документація[ред. | ред. код]

Db4o має різні джерела документації: посібники[2], довідник[3], документація щодо API[4] та блоги[5]. Важлива інформації також доступна на форумах[6], у публікаціях спільноти[7] тощо.

Диспетчер об'єктів[ред. | ред. код]

Диспетчер об'єктів (Object Management Enterprise; OME) — засіб для огляду бази даних db4o, доступний, як додаток до Eclipse і MS Visual Studio 2005/2008. Дозволяє переглядати класи та об'єкти в базі даних, з'єднуватися зі сервером бази даних, будувати запити, переглядати статистику бази даних тощо.

Також база даних db4o забезпечує деякі адміністративні функції:

  • Індексація
  • Дефрагментація
  • Дублювання

Примітки[ред. | ред. код]

  1. TypeHandlers. Архів оригіналу за 9 липня 2011. Процитовано 26 серпня 2010.
  2. Archived copy. Архів оригіналу за 17 грудня 2010. Процитовано 26 серпня 2010.{{cite web}}: Обслуговування CS1: Сторінки з текстом «archived copy» як значення параметру title (посилання)
  3. Documentation. Архів оригіналу за 6 листопада 2010. Процитовано 26 серпня 2010.
  4. Archived copy. Архів оригіналу за 18 березня 2011. Процитовано 26 серпня 2010.{{cite web}}: Обслуговування CS1: Сторінки з текстом «archived copy» як значення параметру title (посилання)
  5. Blogs. Архів оригіналу за 22 вересня 2010. Процитовано 26 серпня 2010.
  6. Db4o Developer Community - Forums. Архів оригіналу за 12 травня 2009. Процитовано 10 червня 2009.
  7. Db4o Developer Community - ProjectSpaces. Архів оригіналу за 25 лютого 2009. Процитовано 10 червня 2009.

Посилання[ред. | ред. код]