Об'єктні бази даних (також об'єктно-орієнтовані системи управління базами даних) є системою управління базами даних, в яких інформація представлена у вигляді об'єктів, використовується в об'єктно-орієнтованому програмуванні. Об'єктні бази даних відрізняються від реляційних баз даних, які є таблично-орієнтованими. Об'єктно-реляційні бази даних є гібридом обох підходів.
Об'єктні бази даних були розглянуті на початку 1980-х років.
Об'єктно-орієнтовані системи управління базами даних (ООСУБД) об'єднують можливості бази даних з можливостями мови об'єктно-орієнтованого програмування. ООСУБД дозволяють використовувати об'єктно-орієнтовані мови програмування для розробки продукту, зберігання даних в якості об'єктів, копіювати або змінювати існуючі об'єкти. Оскільки база даних інтегрована з мовою програмування, програміст може підтримувати узгодженість в одному середовищі, тим, що ООСУБД і мову програмування використовуватимуть одну ту ж модель уявлення. Проекти реляційних СУБД підтримують чіткий поділ між моделлю бази даних і додатки.
Так як зараз повсюдно розвиваються інтернет-технології, компанії зацікавлені в ООСУБД для зберігання своїх складних даних. Використання СУБД, яка була спеціально призначена для зберігання даних в якості об'єктів дає перевагу тим компаніям, які орієнтуються на мультимедійні презентації або організацій, які використовують системи автоматизованого проектування.
Деякі об'єктно-орієнтовані бази даних призначені для роботи з об'єктно-орієнтованими мовами програмування, такими як Delphi, Ruby, Python, Perl, Java, C #, Visual Basic .NET, C ++, Objective-C і Smalltalk; інші мають свої власні мови програмування. ООСУБД використовує точно таку ж модель, як об'єктно-орієнтовані мови програмування.
Більшість об'єктних баз даних також пропонують будь-якої мова запитів, що дозволяє здійснювати пошук по об'єктах, використовуючи декларативний підхід до програмування. Саме в області мов об'єктних запитів і інтеграції запитів і навігаційних інтерфейсів знайдені найбільші відмінності між продуктами. З спробою стандартизації мов об'єктних запитів виступили ODMG з Object Query Language, OQL.
Доступ до даних може бути проведений швидше, так як часто немає необхідності в приєднанні таблиць (як в табличній реалізації реляційної бази даних). Це тому, що об'єкт може бути одержаний безпосередньо, без пошуку, використовуючи покажчики.
Ще одна область відмінності між продуктами полягає в тому, як визначена схема бази даних. Загальною характеристикою, проте, є те, що мова програмування і схема бази даних використовують одні ті ж визначення типів.
Багато об'єктні бази даних. наприклад, Gemstone або VOSS, пропонують підтримку управління версіями. Об'єкт можна розглядати як набір всіх його версій. Крім того, версії об'єкта можна розглядати як об'єкти. Деякі об'єктні бази даних також надають систематичну підтримку тригерів і обмежень, які є основою всіх баз даних.
Ефективність такої бази даних також значно поліпшується в областях, які вимагають величезних обсягів даних в одному місці. Наприклад, банківська установа може отримати інформацію про обліковий запис користувача і надати йому ефективно працювати з різноманітною інформацією, такий як операції, інформація про обліковий запис і т.д. The Big O Notation для такої парадигми бази даних має значне підвищення ефективності.
Порівняння з реляційними базами даних
База даних зберігає об'єкт як комплекс даних і зв'язку між цими даними, без відображення на реляційні рядки і стовпці, і це робить їх придатними для роботи з дуже складними даними. Об'єкти мають зв'язок багато до багатьох, і отримує доступ до використання покажчиків. Покажчики пов'язані з об'єктами, щоб встановити відносини. Ще одна перевага ООСУБД, що вони можуть бути запрограмованими з невеликими процедурними відмінностями, що не впливають на всю систему.