Interested Article - Объектно-ориентированная база данных

Объектно-ориентированная база данных (ООБД) — база данных , в которой данные моделируются в виде объектов , их атрибутов, методов и классов .

История

Первые публикации об объектно-ориентированных базах данных появились в середине 80-х годов.

Характеристики

Простейшая схема ООБД

Объектно-ориентированные базы данных обычно рекомендованы для тех случаев, когда требуется высокопроизводительная обработка данных, имеющих сложную структуру.

В манифесте ООБД предлагаются обязательные характеристики, которым должна отвечать любая ООБД. Их выбор основан на 2 критериях: система должна быть объектно-ориентированной и представлять собой базу данных.

Обязательные характеристики

  1. Поддержка сложных объектов. В системе должна быть предусмотрена возможность создания составных объектов за счёт применения конструкторов составных объектов. Необходимо, чтобы конструкторы объектов были ортогональны, то есть любой конструктор можно было применять к любому объекту.
  2. Поддержка индивидуальности объектов. Все объекты должны иметь уникальный идентификатор, который не зависит от значений их атрибутов.
  3. Поддержка инкапсуляции. Корректная инкапсуляция достигается за счёт того, что программисты обладают правом доступа только к спецификации интерфейса методов, а данные и реализация методов скрыты внутри объектов.
  4. Поддержка типов и классов. Требуется, чтобы в ООБД поддерживалась хотя бы одна концепция различия между типами и классами. (Термин «тип» более соответствует понятию абстрактного типа данных. В языках программирования переменная объявляется с указанием её типа. Компилятор может использовать эту информацию для проверки выполняемых с переменной операций на совместимость с её типом, что позволяет гарантировать корректность программного обеспечения. С другой стороны класс является неким шаблоном для создания объектов и предоставляет методы, которые могут применяться к этим объектам. Таким образом, понятие «класс» в большей степени относится ко времени исполнения, чем ко времени компиляции.)
  5. Поддержка наследования типов и классов от их предков. Подтип, или подкласс, должен наследовать атрибуты и методы от его супертипа, или суперкласса, соответственно.
  6. Перегрузка в сочетании с полным связыванием. Методы должны применяться к объектам разных типов. Реализация метода должна зависеть от типа объектов, к которым данный метод применяется. Для обеспечения этой функциональности связывание имён методов в системе не должно выполняться до времени выполнения программы.
  7. Вычислительная полнота. Язык манипулирования данными должен быть языком программирования общего назначения.
  8. Набор типов данных должен быть расширяемым. Пользователь должен иметь средства создания новых типов данных на основе набора предопределённых системных типов. Более того, между способами использования системных и пользовательских типов данных не должно быть никаких различий.

Необязательные характеристики:

  • Множественное наследование
  • Проверка типов
  • Распределение
  • Проектные транзакции

Открытые характеристики:

  • Парадигмы программирования (процедурное, декларативное)
  • Система представления
  • Система типов
  • Однородность. Реализация — язык программирования — интерфейс.

ООБД и её СУБД

Результатом совмещения возможностей (особенностей) баз данных и возможностей объектно-ориентированных языков программирования являются Объектно-ориентированные системы управления базами данных (ООСУБД). ООСУБД позволяет работать с объектами баз данных так же, как с объектами в программировании в ООЯП. ООСУБД расширяет языки программирования, прозрачно вводя долговременные данные, управление параллелизмом, восстановление данных, ассоциированные запросы и другие возможности.

Некоторые объектно-ориентированные базы данных разработаны для плотного взаимодействия с такими объектно-ориентированными языками программирования, как Python , Java , C# , Visual Basic .NET , C++ , Objective-C и Smalltalk ; другие имеют свои собственные языки программирования. ООСУБД используют точно такую же модель, что и объектно-ориентированные языки программирования.

СУБД должна обеспечивать:

  • Долговременное хранение
  • Использование внешней памяти
  • Параллелизм
  • Восстановление
  • Нерегламентированные запросы

Примечания

  1. Словарь по естественным наукам. Глоссарий.ру
  2. . Дата обращения: 13 июня 2011. 13 марта 2012 года.
  3. IEEE Database Engineering, special issue on Object-Oriented Databases, F. Lochovski, ed., Dec. 1985
  4. Atkinson et al., 1989

Литература

  • Дейт К. Дж. Введение в системы баз данных. — М. : Вильямс, 2005. — ISBN 5-8459-0788-8 . (Глава 25 «Объектные базы данных» и глава 26 «Объектно-реляционные базы данных».)
  • Чертовской В.Д. . Московский государственный университет печати. Дата обращения: 7 мая 2011. Архивировано из 26 января 2012 года.

Ссылки

  • С.Д. Кузнецов. . CIT Forum. Дата обращения: 12 июня 2011. 25 января 2012 года.
  • С.Д. Кузнецов. . CIT Forum. Дата обращения: 12 июня 2011. 8 февраля 2012 года.
Источник —

Same as Объектно-ориентированная база данных