Конверсия реляционных баз данных и трансляция SQL-запросов в среду объектных баз данных
Реляционные системы управления базами данных успешно используются
во многих приложениях. Однако из-за требования нормализации таблиц
и ограниченного набора поддерживаемых типов данных они оказались
неудобными для в тех случаях, когда нужно иметь дело с данными
более сложной структуры. Эти трудности привели к созданию
объектно-ориентированных систем управления базами данных.
Объектно-ориентированная модель данных поднимает уровень
абстракции и позволяет пользователю манипулировать более
естественными концептами высокого уровня, а не записями, полями,
кортежами.
В настоящее время объектно-ориентированные системы стали вполне
зрелыми, и уже существует ряд хороших коммерческих продуктов.
Стимулирующее влияние на развитие объектных технологий в системах
баз данных оказало появление объектно-реляционных СУБД лидирующих
поставщиков реляционных СУБД - Oracle, Informix, IBM... Многие
организации переходят к объектно-ориентированным технологиям. При
этом естественно возникает желание использовать уже существующие
данные, которые хранятся в реляционных системах. К решению этой
проблемы существует несколько подходов, одним из которых является
полная семантическая конверсии реляционной базы данных в
объектно-ориентированную.
Процесс конверсии базы данных из одной модели в другую можно
разделить на две основные фазы: трансформацию схемы базы данных из
одной модели в другую и конверсию данных в соответствии с этой
трансформацией схемы. Трансформация схемы - это отображение
концептов исходной модели данных в концепты целевой модели данных.
В данном случае она сводится к идентификации высокоуровневых
объектно-ориентированных концептов в реляционной схеме, т.е.
восстановлению "рельефной" объектно-ориентированной схемы из
"плоской" реляционной схемы. Объектно-ориентированная модель
данных описывает не только структуру (статический аспект), но
также и поведение (динамический аспект) объектов реального мира,
которые она моделирует. С другой стороны, реляционная модель
допускает в основном моделирование структуры и только некоторых
весьма ограниченных динамических аспектов объектов реального мира
(с помощью, например, хранимых процедур или триггеров). По этим
причинам, при трансформации схемы в основном используются лишь
статические возможности объектно-ориентированной модели данных.
Кроме конверсии самой базы данных, необходимо также осуществить и
конверсию приложений. Одной из важных проблем в этой области
является трансляция запросов. При этом естественно рассматривать
прежде всего SQL-запросы.
В докладе рассматриваются проблемы, связанные с автоматизацией
процессов трансформации схемы, конверсии данных и трансляции
запросов, а также предлагаются алгоритмы реализации этих
процессов.
|