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

ПРОБЛЕМЫ И ЗАДАЧИ АВТОМАТИЗИРОВАННОГО ПРОЕКТИРОВАНИЯ РАСПРЕДЕЛЕННЫХ БАЗ ДАННЫХ

В.Б. Новосельский Научный руководитель - к. т.н., профессор Т.А. Павловская

Базы данных (БД) занимают центральное место в автоматизированных информационно-управляющих системах. В связи с возрастающими требованиями к оперативности и достоверности информации создание распределенных информационных систем является весьма актуальной задачей. В статье описаны основные этапы проектирования распределенных БД, проведен анализ существующих систем автоматизированного проектирования (САПР) в области проектирования БД, рассмотрены перспективные направления проектирования БД. Сформулированы принципы построения эффективных САПР БД.

Введение

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

Процесс проектирования распределенных баз данных (РБД) включает анализ предметных областей пользователей, синтез оптимальных логических структур РБД, логических и физических структур локальных баз данных (ЛБД) и сетевых каталогов, выполняемых на этапах технико-экономического обоснования проекта, разработки технического задания и технорабочего проектирования РБД [1, 2, 7]. Ключевой проблемой проектирования РБД является разработка компонентов логического уровня, включающего логические структуры РБД, локальных БД и базы метаданных (БмД) ре-позитория [8].

В статье описываются основные этапы проектирования РБД, рассматриваются существующие системы автоматизации проектирования БД и перспективные направления проектирования БД и формулируются принципы построения эффективных САПР

БД.

Анализ предметных областей пользователей

Одним из основных этапов проектирования РБД является анализ предметных областей пользователей. Основной целью данного этапа является изучение и анализ предметных областей пользователей, определение целесообразности проектирования РБД, обеспечение формализованного описания и структуризации предметных областей пользователей. Процесс анализа включает четыре взаимосвязанных этапа: предпроект-ный анализ информационных множеств пользователей; анализ предметных областей и построение внешних моделей данных пользователей; построение обобщенной внешней (глобальной концептуальной) модели РБД; нормализация обобщенной внешней модели (ОВМ) и построение канонической структуры РБД [2, 7, 9]. При этом под внешней моделью пользователя понимается формализованное описание множества устойчивых характеристик и свойств данных, процедур их обработки и отношений между ними, которые в совокупности составляют предметную область. Основным требованием, предъявляемым к способам описания и структуризации ОВМ, определяющим возможность использования результатов анализа для автоматизации проектирования РБД, является уровень формализации представления предметных областей пользователей.

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

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

Синтез оптимальной логической структуры

Синтез оптимальной логической структуры РБД является одной из центральных проблем разработки РБД. Решаемые на этом этапе задачи отличаются большой размерностью, сложностью и трудоемкостью, что определяется распределенностью мест хранения и обработки данных; необходимостью учета большого количества характеристик используемой информации и процедур ее обработки; многообразием критериев эффективности; ограничениями СУРБД, СУБД, операционных систем и технических средств; недостаточной разработкой используемых формальных методов проектирования [2]. Большинство разработанных в настоящее время моделей синтеза логических структур РБД основывается на исследовании задач размещения баз данных или информационных массивов и программ по узлам ВС заданной конфигурации, которые решаются с использованием методов целочисленного линейного, нелинейного, квадратичного и динамического программирования. Основным задачами при этом являются определение рационального уровня избыточности информации (рациональное количество копий) и выбор эффективной пропускной способности каналов связи маршрутов передачи информации в ВС.

Основной целью формализованных моделей и методов синтеза логической структуры РБД является отображение канонической структуры РБД в логическую, которая обеспечивает экстремальное значение заданного критерия эффективности функционирования АИУС и удовлетворяет требованиям и ограничениям, отраженным в техническом задании [2, 10]. Результатом логического синтеза являются оптимальные по заданному критерию эффективности состав и структура типов логических записей; размещение их и локальных БмД репозитория по узлам ВС с оптимальной степенью дублирования, определяемой характеристиками информации и запросов пользователей, топологией, характеристиками и ограничениями вычислительной сети. Основными критериями оптимизации являются [16]:

• уменьшение объема памяти, необходимой для хранения всей информации;

• уменьшение времени поиска требуемой информации;

• уменьшение времени первоначальной загрузки информации;

• уменьшение вероятности перестраивания набора отношений при введении новых типов данных;

• освобождение набора отношений от аномалий добавления, изменения и удаления.

Физическое проектирование БД

Основной целью физического проектирования БД является выбор таких методов физической структуризации данных, при которых обеспечивается экстремум заданного критерия эффективности функционирования БД. К основным факторам, влияющим на качество физического проекта БД, относятся: обеспечение минимальной избыточности представления структур данных; эффективное использование внешней памяти для хранения больших объемов данных; обеспечение минимального трафика для РБД в архитектуре «клиент-сервер»; обеспечение минимального среднего времени доступа к данным и невысокой средней стоимости хранения информации. Результаты физического проектирования БД существенно зависят от следующих факторов: параметров логиче-

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

Процесс проектирования физических структур РБД включает в себя выбор рациональной стратегии размещения информационных массивов по узлам ВС. Такие задачи решаются с учетом затрат на хранение данных, задержек в очередях и стоимости передачи данных при ограничениях на ожидаемое время доступа к каждой БД, объем доступной внешней памяти и др. Задачи решаются с использованием эвристических алгоритмов. Исследование особенностей размещения информации в ВС с радиальной, распределенной и иерархической структурами позволило разработать модели и стратегии, обеспечивающие размещение информации в ВС с учетом особенностей топологии ВС [8].

Несмотря на многообразие моделей и методов проектирования РБД, в настоящее время отсутствует единый комплекс взаимосвязанных формализованных моделей и методов анализа и синтеза оптимальных по заданным критериям эффективности логических структур РБД, локальных БД и БмД репозитория, позволяющих автоматизировать процесс проектирования РБД на всех основных этапах их разработки. Реализация формализованных моделей и методов, пакетов прикладных программ и систем автоматизированного проектирования представлена в настоящее время ограниченным числом разработок отдельных процедур проектирования РБД [11].

Обзор существующих САПР БД

На рынке систем автоматизированного проектирования структур БД можно выделить такие средства разработки, как S-Designer от Sybase, ERWin, Oracle Designer/2000. Менее распространены отечественные CASE-средства, среди них можно выделить: ИРИС (ВНИИСИ РАН), АПРОБАЗ (Автоматизированное ПРОектирование БАЗ данных), «Дизайнер баз данных» (Университет, г. Санкт-Петербург), СИНТЕЗ+ (академия им. Жуковского), КОМОД (Институт кибернетики, г. Киев), CASE. Аналитик (предприятие «Эйтекс», г. Москва) [2, 12-14]. Системы отличаются развитыми информационными, сервисными и графическими возможностями. Однако анализ возможностей и характеристик данных систем показывает, что им присущи следующие существенные недостатки.

Во-первых, проектирование структур БД на начальных этапах (концептуальном и логическом) проводится в основном вручную: исходные данные для проектирования в виде списков сущностей предметных областей, атрибутов сущностей и связей между сущностями задаются самим проектировщиком, исходя из анализа постановки задач, его опыта и интуиции. Этот недостаток связан с ограниченностью модели «сущность-связь», используемой в данных системах, которая не позволяет отразить все сложности и особенности деятельности моделируемой предметной области.

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

В-третьих, данные системы ориентированы на проектирование только реляционных структур локальных БД и не содержат методов и средств проектирования СБД в архитектуре «клиент-сервер», РБД и ООБД. Этот фактор ограничивает область их применения в современных условиях. Кроме того, даже при проектировании реляционных БД используется достаточно устаревшая методология Дж. Мартина, базирующаяся на двухэтапном подходе. Современная методология использует трехэтапный подход с выделением в качестве отдельного и важного этапа логического проектирования.

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

БД.

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

Проведенный анализ СЛБЕ-средств в области автоматизации проектирования БД показывает, что они обеспечивают в основном информационную поддержку процесса проектирования, облегчают рутинную работу проектировщиков по формированию структурных и графических диаграмм и документированию описаний структур БД, автоматизируют описания структур БД на языке описания данных выбранной СУБД. Наиболее продвинутые из них имеют удобный визуальный интерфейс разработки, развитые сервисные средства, а также средства генерации программного кода приложений. Однако функциональные возможности данных систем зачастую ограничены и не охватывают всех важных задач проектирования, создания и эксплуатации БД. При этом практически отсутствуют средства автоматизации разработки РБД и ООБД; не обеспечивается комплексное решение задач проектирования БД и получение оптимальных проектных решений. Процесс проектирования практически проводится разработчиком вручную с использованием его знаний и практического опыта.

Перспективные направления проектирования БД

Рассмотрим подробнее объектно-ориентированную модель данных (ООМД) и в целом объектно-ориентированный подход к построению БД, являющиеся в настоящее время наиболее перспективными направлениями проектирования БД. Возникновение направления ООБД определилось потребностями практики - необходимостью сложных типов данных: текста, графики, данных, аудио и видеоинформации. ООБД тесно связаны с развивающимися объектно-ориентированными языками и системами программирования.

В ООБД информация хранится в форме объектов. Полностью объектно-ориентированная СУБД должна обеспечивать также объектно-ориентированный интерфейс взаимодействия с пользователем. В основе ООБД лежит понятие объекта. Объектно-ориентированные БД характеризуются свойствами инкапсуляции, наследования и полиморфизма [6, 17].

Объектно-ориентированная технология призвана устранить ограничения, присущие реляционной технологии проектирования БД, и предоставить разработчикам более

естественные и совершенные средства моделирования предметной области. Перечислим основные принципы ООМД.

1. Классификация - объекты, обладающие одинаковыми свойствами и поведением, могут рассматриваться как члены одного класса. Таким образом, индивидуальный объект может рассматриваться как частный случай общего понятия.

2. Подклассы и суперклассы - экземпляры некоторого класса могут образовывать подмножество другого класса.

3. Подклассы наследуют атрибуты и поведение своих суперклассов.

4. Наследование атрибутов и поведения позволяет построить иерархию классов: суперкласс, обладающий общими для ряда классов атрибутами, порождает ряд подклассов, которые, наследуя атрибуты своего класса-родителя, добавляют к ним ряд атрибутов, определяющих их собственные свойства. Этот механизм практически реализует концепции обобщения и конкретизации.

5. Агрегирование позволяет создать сложные объекты из объектов-компонентов, определять отношение типа «часть-целое».

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

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

ООБД по сравнению с реляционными БД обеспечивают следующие преимущества:

• в таких БД хранятся не только данные, но и методы их обработки, инкапсулированные в одном объекте;

• ООБД позволяют обрабатывать мультимедийные данные;

• ООБД допускают работу на высоком уровне абстракции;

• ООБД позволяют пользователям создавать структуры данных любой сложности.

Объектно-ориентированный подход к проектированию БД и в целом АИУС является альтернативным широко используемым структурным методам.

Принципы построения эффективных САПР БД

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

1. Использование компонентной (модульной) технологии проектирования БД, которая обеспечивает параллельное спиральное проектирование структурных компонентов БД с их дальнейшим комплексированием по мере необходимости. Данная технология, в отличие от существующей в настоящее время каскадной структурной схемы проектирования, обеспечивает большую гибкость и открытость системы БД (переносимость, интероперабельность, масштабируемость).

2. Использование технологии корпоративных хранилищ данных (Data Warehouse) в качестве составной части интегрированных БД для хранения исторической информации организаций. Требуется разработка методов и средств анализа и синтеза оптимальных структур хранилищ данных, процедур администрирования такого рода БД (извлечение данных и операционных БД, «очистки» и размещения данных в

хранилище, поиска данных и др. операций). БД хранилищ должны строиться на объектно-ориентированных моделях данных.

3. Применение нескольких моделей данных для описания предметных областей пользователей. Как показала практика, использование только какой-либо одной модели (например, популярной ER-модели) накладывает жесткие ограничения на реальную структуру предметной области, что не позволяет учесть динамические характеристики и специфические особенности объектов и процессов предметной области.

4. Применение методов оптимизации проектирования структур БД по эксплутацион-ным критериям эффективности, в том числе для ЛБД и РБД, методов оценки качества проектных решений. Развитие моделей управления запросами и транзакциями для повышения эффективности функционирования систем. В связи с ростом требований к надежности и безопасности информации, особенно для БД класса VLDB, необходимо применение моделей и методов анализа и синтеза структур БД по критериям правильности содержимого (достоверности) и защиты данных.

5. Развитие методологии объектно-ориентированного анализа предметных областей пользователей, объектно-ориентированного проектирования и программирования БД.

6. Развитие средств репозитория CASE: расширение функциональных возможностей для управления метаданными распределенных БД, решение задач оптимального размещения БмД репозитория по узлам ВС корпоративной информационной системы; поддержание эволюции структуры данных и метаданных; создание систем управления локальными и распределенными репозиториями, подобных СУБД и СУРБД; поддержка параллельного проектирования компонентов независимыми разработчиками.

Таким образом, в основе современной САПР БД должна лежать методология оптимального анализа и синтеза локальных и распределенных БД и модульного

прикладного программного обеспечения приложений, включающая:

• формализованные модели и методы спецификации и анализа информационных требований пользователей, кластерного анализа информации и структуризации предметных областей пользователей локальных и распределенных БД, построения оптимальных канонических (концептуальных) структур локальных и распределенных БД;

• объектно-ориентированные методы анализа и структуризации предметных областей, формирования концептуальных структур базы метаданных репозитория системы;

• модели и методы синтеза оптимальных по различным критериям эффективности логических структур локальных и распределенных БД, структур БмД репозитория и ее размещения по узлам вычислительной сети, а также формирования оптимальных спецификаций и путей доступов запросов и транзакций;

• модели и методы синтеза оптимальных физических структур локальных и распределенных БД, спецификаций модулей прикладного программного обеспечения приложений, транзакций и SQL-запросов;

• модели и методы обеспечения целостности, достоверности и информационной безопасности БД;

• модели и методы локального и распределенного управления сопровождением и развитием БД.

Заключение

В статье описаны основные этапы проектирования локальных и распределенных

БД, проведен анализ зарубежных и отечественных CASE-средств в области автомати-

зации проектирования БД, рассмотрены перспективные направления проектирования

БД. Сформулированы принципы построения эффективных САПР баз данных.

Литература

1. Кириллов В. В. Основы проектирования реляционных баз данных, СПб: ИТМО, 1994. 90 с.

2. Кульба В.В., Ковалевский С.С., Косяченко С.А., Сиротюк В.О. Теоретические основы проектирования оптимальных структур распределенных баз данных. Серия: Информатизация России на пороге XXI века. М.: Синтег, 1999. 660 с.

3. Хаббард Дж. Автоматизированное проектирование баз данных. М.: Мир, 1984. 296 с.

4. Швецов В.И., Визгунов А.Н., Мееров И.Б. Базы данных. Нижний Новгород. Издательство Нижегородского госуниверситета, 2004. 271 с.

5. Дейт К.Дж. Введение в системы баз данных: Пер. с англ. 6-е изд. К.: Диалектика, 1998. 784 с.

6. Харрингтон Дж. Проектирование объектно-ориентированных баз данных. М.: ДМК Пресс, 2001. 269 с.

7. Тамер Оззу М., Валдуриз П. Распределенные и параллельные базы данных. // СУБД, 1996. №4. С. 4-26.

8. Мамиконов А.Г., Кульба В.В., Косяченко С.А., Ужастов И.А. Оптимизация структур распределенных баз данных в АСУ. М: Наука, 1990.

9. Мартин Дж. Вычислительные сети и распределенная обработка данных / пер. с англ. Вып. 1, 2. М: Финансы и статистика, 1985, 1986.

10. Сиротюк В.О. Модели и методы синтеза оптимальных логических структур и базы метаданных репозитария распределенных баз данных в АСУ. // Автоматика и телемеханика. 1999. №1. С. 166-179.

11. Шаймарданов Р.Б. Моделирование и автоматизация проектирования структур баз данных. М.: Радио и связь, 1984.

12. Кабаков Ю.Б., Медведева А.И., Фурман Г.И. КОМОД-91 - система поддержки концептуальных схем и гипертекстов. // УсиМ. 1991. №7.

13. Алтухова А.Н., Чумаков Ю.С. Словарь проекта - CASE - средство для аналитиков и проектировщиков баз данных. / Семинар «CASE-технология». Сб. материалов. М.: 1992.

14. CASE. Аналитик для IBM PC. Руководство аналитика. М.: Эйтекс, 1993.

15. Кульба В.В., Косяченко С.А., Ужастов И.А. Задачи проектирования распределенных баз данных. М.:НИИТЭХИМ, 1985. 190 с.

16. Бабанова Н. И. Разработка и оптимизация моделей и алгоритмов автоматизированного проектирования локальных и распределенных баз данных: Автореф. дис., Владикавказ, 2000. С. 8-15.

17. Багуи С. Объектно-ориентированные базы данных: достижения и проблемы. // Открытые системы. 2004. №3.