Database Programming & Design

       

Анатомия объектно-реляционной базы данных


Дон Чемберлин

Источник: Donald D. Chamberlin. Anatomy of an Object-Relational Database. DB2 Online Magazine, Winter 1996.

Замечания обозревателя:


Уважаемые читатели! Вашему вниманию предлагается не самая свежая

статья, посвященная принципам организации современных вариантов

DB2. Она была опубликована в конце 1996 г. в журнале DB2 Online

Magazine (). По слухам, официальный полный перевод этой статьи доступен в бумажной форме в Московском

представительстве компании IBM. Тем не менее, мне показалось

полезным опубликовать обзор статьи на нашем сервере по следующим

причинам.

Во-первых, имя автора этой статьи, господина Дональда Чемберлина известно отечественным специалистам в области баз данных более 20

лет. Для меня начало деятельности Дона в компании IBM связано с

легендарным проектом System R, реализация которого впервые

продемонстрировала практические возможности реляционного подхода

к базам данных. В настоящее время господин Чемберлин работает в

научно-исследовательской лаборатории IBM () и



является лидером группы, связанной с перспективными архитектурами

систем баз данных.

Во-вторых, представляемая вашему вниманию статья, на мой взгляд, исключительно просто и понятно описывает основные принципы

объектно-реляционного подхода в связи с его реализацией в DB2 for

Common Servers, которая, в свою очередь, является одной из

основных составляющих IBM DB2 Universal Database.

Надеюсь, что вы получите не меньшее удовольствие, чем я, когда

первый раз читал эту статью.

С уважением, Сергей Кузнецов

Системы управления реляционными базами данных представляют собой одну из наиболее удачных технологий в компьютерных науке и

индустрии. Большая часть данных в мире бизнеса хранится в

реляционной форме. До последнего времени индивидуальные элементы

хранимых данных были относительно небольшими и простыми. Для

хранения таких данных хватало поддержки набора предопределенных

типов данных, таких как целые и вещественные числа и строки

символов. Операции, определенные над этими типами данных


(например, арифметические операции и операции сравнения), были

также простыми и предопределенными.

Однако все большее число современных приложений нуждается в

хранении и манипулировании данными, которые не являются простыми

и небольшими по размеру, а также в выполнении непредопределенных

операций над этими данными. Например, городскому управлению

планирования может понадобиться хранить карты, фотографии,

письменные документы с диаграммами и аудио- и видеозаписи.

Очевидно, что традиционные возможности языка SQL, связанные с

типами данных и поиском, недостаточны для нового поколения

мультимедийных приложений баз данных. Также понятно, что

требования таких приложений настолько различны, что не могут быть

удовлетворены любым набором предопределенных расширений языка.

Требуются средства определения пользователями новых типов данных

и функций над ними.

Другим требованием современных приложений баз данных является

возможность хранения правил, делающих данные более активными и

позволяющих системе баз данных автоматически выполнять проверки

корректности данных и автоматизировать многие бизнес-процедуры.

Активизация данных дает возможность приложениям совместно

использовать не только сами данные, но и поведение данных.

Обе указанные возможности позволяют повысить ценность хранимых

данных за счет расширения их семантического содержимого. Тенденция

к повышению роли семантического содержимого хранимых данных

является наиболее важной в современном управлении базами данных.

В соответствии с этой тенденцией реляционные системы баз данных

расширяются в двух направлениях: (1) добавлении "объектной

инфраструктуры" к самой системе баз данных в виде поддержки

определяемых пользователями типов данных, функций и правил; (2)

построении поверх этой инфраструктуры "реляционных расширителей",

которые поддерживают специализированные приложения, такие как

выборка изображений, развитый текстовый поиск, географические

приложения. Система, которая обеспечивает объектную

инфраструктуру и набор реляционных расширителей, называется

"объектно-реляционной".

Объектно-реляционные системы объединяют достоинства современных

объектно-ориентированных языков программирования с такими

свойствами реляционных систем как множественные представления

данных и высокоуровневые непроцедурные языки запросов. В данной

статье анализируется объектная инфраструктура и реляционные

расширители, поддерживаемые современной объектно-реляционной

системой IBM DB2 for Common Servers, которая в дальнейшем тексте

будет называться просто DB2.


Содержание раздела