- •Лекция 11. Развитие бд: состояние и перспективы
- •Использование xml для описания данных
- •Реализация xml сервера
- •11.2 Объектно-ориентированные бд
- •11.3 Распределенные бд
- •Синхронизация доступа к данным
- •Управление транзакциями
- •Поддержание копий данных в нескольких узлах сети
- •Фрагментация объектов бд
- •Алгоритмы выполнения реляционных операций
- •11.4 Коммерческие бд
- •Архитектура "клиент-сервер" и параллельность обработки
- •Системы бд с многоуровневой защитой
- •11.5 Информационные хранилища
- •Логическая архитектура базы данных
- •Физическая архитектура базы данных
- •Индексные структуры
- •Материализованные представления
- •Концептуальная модель данных
Использование xml для описания данных
Одной из особенностей XML является возможность описания структур данных и хранимых данных. С использованием XML можно определить новые теги специально для описания эквивалента таблиц и столбцов (сущностей и атрибутов) в структуре реляционной базы данных, которые можно связывать с тегами для их родительской таблицы или сущности.
Имеются два подхода к описанию структуры базы данных на XML:
Во-первых, прикладную базу данных может описывать DTD XML-документа. В этом случае операционные данные базы данных могут быть размещены между наборами описанных тегов. Такое DTD может, например, генерироваться одним CASE-средством, а читаться другим, обеспечивая способ передачи структуры данных.
Во-вторых, можно разместить сами определения таблицы и столбцов между тегами XMI, определенными на более высоком уровне абстракции. Этот подход немного более хитрый, поскольку метамодель XMI оченьабстрактна, но использование метамодели XMI позволяет описывать намного больше, чем таблицы и столбцы.
Реализация xml сервера
На выставке CеBIT '99 корпорация Software AG представила новый информационный сервер на основе языка расширяемой разметки XML. Сервер, получивший кодовое название Tamino.
11.2 Объектно-ориентированные бд
Направление объектно-ориентированных баз данных (ООБД) возникло в середине 1980-х и определяется потребностями практики: необходимостью разработки сложных прикладных ИС, для которых технология предшествующих систем БД не была вполне удовлетворительной. Наиболее сильное влияние на работы в области ООБД оказывают проработки реляционных СУБД и следующее хронологически за ними семейство БД, в которых поддерживается управление сложными объектами.
В наиболее общей и классической постановке объектно-ориентированный подход базируется на концепциях:
объекта и идентификатора объекта;
атрибутов и методов;
классов;
иерархии и наследования классов.
Любая сущность реального мира в объектно-ориентированных языках и системах моделируется в виде объекта. Любой объект при своем создании получает генерируемый системой уникальный идентификатор, который связан с объектом во все время его существования и не меняется при изменении состояния объекта.
Каждый объект имеет состояние и поведение. Состояние объекта - набор значений егоатрибутов. Поведение объекта - наборметодов(программный код), оперирующих над состоянием объекта. Значение атрибута объекта - это тоже некоторый объект или множество объектов. Состояние и поведение объекта инкапсулированы в объекте; взаимодействие между объектами производится на основе передачи сообщений и выполнении соответствующих методов.
Множество объектов с одним и тем же набором атрибутов и методов образует классобъектов. Объект должен принадлежать только одному классу (если не учитывать возможности наследования). Допускается наличие примитивных предопределенных классов, объекты-экземляры которых не имеют атрибутов: целые, строки и т.д. Класс, объекты которого могут служить значениями атрибута объектов другого класса, называетсядоменомэтого атрибута.
Допускается порождение нового класса на основе уже существующего класса - наследование. В этом случае новый класс, называемый подклассом существующего класса (суперкласса) наследует все атрибуты и методы суперкласса. В подклассе, кроме того, могут быть определены дополнительные атрибуты и методы.
Следуя практике многих ООБД, предлагается выделить два уровня моделирования объектов: нижний (структурный) и верхний (поведенческий). База данных - это набор элементов данных, связанных отношениями "входит в класс" или "является атрибутом". Таким образом, БД может рассматриваться как ориентированный граф.
Для разработки ООБД используются следующие ОО языки программирования: Smalltalk; Лисп (проекта ORION), TDL, Си++, CO2 и др.
В качестве ОО СУБД можно отметить следующие: O2 (французский консорциум Altair), ORION (американская компания MCC), GemStone (американская фирма Servio Logic) и Iris (Hewlett-Packard).
По архитектуре многие ОО системы строятся над некоторой существующей реляционной СУБД. Другой основой ОО СУБД являются так называемые расширяемые системы. Основная идея таких систем состоит в поддержании набора модулей с четко оговоренными интерфейсами, на базе которого можно быстро построить СУБД, опирающуюся на конкретную модель данных или предназначенную для конкретной области применений.