Что такое объектно-ориентированная база данных?

С базами данных в том или ином их виде сегодня знаком практически каждый человек, садящийся за компьютер. В то же время, о том, какими эти базы данных бывают и как устроены внутри, большая часть пользователей имеет весьма приблизительное представление. Именно поэтому в нашей традиционной рубрике FAQ мы сегодня рассмотрим такой интересный класс баз данных, как объектно-ориентированные.

Объектно-ориентированная база данных, в отличие от традиционных реляционных СУБД, хранит данные не в виде каких-то отдельных записей, а в виде объектов, то есть составных единиц, характеризующихся определённым набором свойств. Такое представление данных характерно и для объектно-ориентированного программирования, где все операции также производятся с объектами. Собственно, значительная часть объектно-ориентированных баз данных и разрабатывалась с целью упрощения жизни разработчиков, использующих объектно-ориентированные языки. В целом же, объектно-ориентированные базы данных обычно рекомендуют применять в тех проектах, где данные имеют достаточно сложную структуру, и потому использование реляционных СУБД затруднительно. В большинстве случаев вместо объектно-ориентированных баз данных применяют альтернативное решение проблемы, а именно - ORM-фреймворки, которые позволяют удобным образом использовать реляционные СУБД в объектно-ориентированных приложениях.

В объектно-ориентированных СУБД поддерживаются все те же приёмы, которые знакомы программистам по объектно-ориентированным языкам программирования, такие, как инкапсуляция, наследование, перегрузка, и так далее. При этом для объектно-ориентированных СУБД характерна поддержка расширяемого набора типов данных. Конечно, конкретная реализация этих приёмов зависит от конкретной объектно-ориентированной СУБД - так, наследование может быть как одиночным, так и множественным.

Может возникнуть вполне закономерный вопрос: если объектно-ориентированные базы данных так хороши и удобны, как так получилось, что большая часть популярных СУБД относится к реляционным? Дело в том, что в силу особенностей объектно-ориентированных СУБД, нетривиальными становятся задачи обеспечения целостности и быстрого извлечения данных из базы. Тем не менее, по мере роста производительности компьютеров количество используемых объектно-ориентированных СУБД во всем мире непрерывно растет.

Вадим СТАНКЕВИЧ,
dreamdrusch@tut.by

 
Версия для печатиВерсия для печати

Номер: 

11 за 2010 год

Рубрика: 

Software
Заметили ошибку? Выделите ее мышкой и нажмите Ctrl+Enter!
 

Комментарии

Аватар пользователя Al
Так статья про БД или про СУБД? Начал про одно, закончил про другое... Если таки про СУБД, то как они называются? А то опять ни о чем, типа "а вот есть где-то на свете птица с ушами..."
Аватар пользователя Вадим Станкевич
Где БД, там и СУБД. А "птица с ушами" - это стиль рубрики, которая кратко рассказывает о том, что что-то где-то есть, и если интересно, человек сам начинает искать подробности.