Особенности сооружения опор в сложных условиях: Сооружение ВЛ в районах с суровыми климатическими и тяжелыми геологическими условиями...

Семя – орган полового размножения и расселения растений: наружи у семян имеется плотный покров – кожура...

Постреляционные модели и базы данных 197

2018-01-30 254
Постреляционные модели и базы данных 197 0.00 из 5.00 0 оценок
Заказать работу

Вверх
Содержание
Поиск

6.4.1. Основные понятия OODM

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

Атрибуты описывают свойства объекта. Например, в объект PERSON (персона) включены атрибуты Name (имя), Social Security Number (номер социального страхо­вания) и Date of Birth (дата рождения).

Объекты, которые совместно используют одни и те же характеристики, груп­пируются в классы. Класс представляет собой абстрактное представление схожих объектов со структурой совместного доступа {атрибутами) и поведением {метода­ми). В общем случае класс напоминает набор сущностей ER-модели. Однако класс отличается от набора сущностей тем, что содержит набор процедур, называемых методами. Метод класса представляет собой некоторое действие, например, поиск, изменение данных или распечатку данных. Иначе говоря, методы эквивалентны процедурам в традиционных языках программирования. В терминах объектно-ориентированного подхода методы определяют поведение объекта.

Классы организованы в иерархию классов. Иерархия классов похожа на пере­вернутое дерево, в ней каждый класс имеет только одного предка (явное сходство с иерархической моделью).

Наследование — это возможность объекта внутри иерархии классов наследовать атрибуты и методы классов, структурно расположенных выше него.

Преимущества OODM

Объектно-ориентированная модель имеет несколько важнейших преимуществ перед ER-моделью.

Добавление семантического наполнения делает модель более значимой и инфор­мационно-насыщенной.

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

Целостность базы данных. Так же как и иерархическая, объектно-ориентиро­ванная модель использует наследование для защиты целостности базы данных. Однако объекты OODM содержат большее количество типов связей, а сами связи являются более сложными.

Структурная независимость и независимость по данным. Автономия объекта объектно-ориентированной модели гарантирует структурную независимость и не­зависимость по данным.


Глава 6. Теория баз данных

6.4.3. Недостатки OODM

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

Отсутствие должного уровня стандартизации. Для OODM пока не существует стандартов объектно-ориентированной модели. Различные стандарты, связанные с OODM, находятся в активной разработке, работа над ними продолжается, однако они не являются столь распространенными, как стандарты для РСУБД. Происхо­дит сближение стандартов для РСУБД с ООСУБД, например, в стандарте SQL3 и более поздних. Особенно проблематичным является отсутствие стандартного метода доступа к данным. Этот недочет создает проблемы при доступе к данным из различных источников (различные поставщики поддерживают различные методы доступа к данным, как правило, несовместимые).

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

Трудность изучения. Недостаток стандартизации и трудности, вызванные на­вигационным стилем доступа к данным, приводят к затруднениям в изучении объектно-ориентированной модели, даже большим, чем при изучении сетевой модели. Несмотря на то что мы с легкостью используем объекты — перетаскиваем объекты на экране дисплея, не заботясь и не задумываясь о тех процессах, которые обеспечивают это действие, — моделирование данных и реализация объектно-ори­ентированных баз данных — это совершенно иные действия.

Объекты сложны, и тот факт, что они могут иметь большое семантическое на­полнение, делает их трудными для проектирования и реализации. Работа с OODM больше похожа на объектно-ориентированное программирование, чем на про­ектирование данных. Это приводит к тому, что конечные пользователи считают объектно-ориентированные системы трудными для понимания и применения.

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

Проектирование баз данных

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


Проектирование баз данных



связь», так и делали, однако при наличии компьютера с развитым графическим интерфейсом рисунки на бумаге отошли в прошлое. Довольно быстро был создан целый класс программных продуктов, позволяющий не только выполнять мо­делирование в парадигме «сущность-связь», но и генерировать на основе соз­данных моделей схему базы данных для практически любых распространенных серверов баз данных. Одной из таких программ является ErWin Data Modeler (рис. 6.18).


Data Rules Data Warehouses Default Values Domains Rle Groups ff Model Sources Relationships ScriptTemplates


Рис. 6.18. Окно программы ErWin Data Modeler

При помощи этой программы можно быстро и легко создавать сущности, при­сваивать им атрибуты, ключи, создавать между ними связи. После того как схема создана, можно выбрать конкретный сервер баз данных и построить схему базы данных. При этом ErWin Data Modeler переводит созданную логическую модель на физический уровень представления и генерирует схему в соответствии с набором типов данных на конкретном выбранном сервере. Этот процесс носит название прямого проектирования (forward engineering).

Интересной особенностью ErWin Data Modeler является также возможность осуществить обратную операцию: извлечь схему из выбранного сервера баз данных и отобразить ее в качестве своей модели. Извлеченную схему можно затем изме­нить и снова осуществить прямую генерацию.

Надо отметить, что современные серверы баз данных часто оснащаются сред­ствами моделирования модели «сущность-связь» или другими средствами создания схем баз данных.


Глава 6. Теория баз данных

Вопросы для самопроверки

1. Что такое «предметная область»?

2. Какие определения понятия «база данных» вам известны? Приведите мини­
мум два.

3. Что такое «СУБД»?

4. Из каких компонентов состоит СУБД?

5. Каковы основные группы пользователей СУБД?

6. Что такое «модель данных»?

7. Какие виды классификаций СУБД вам известны?

8. Как СУБД классифицируются в зависимости от принятой модели данных?

9. Что такое «распределенная СУБД»?

 

10. Чем клиент-серверная СУБД отличается от встроенной?

11. Какие функции выполняет СУБД?

12. Какие модели данных вам известны?

13. Из каких уровней состоит трехуровневая модель представления данных ANSI-
SPARC?

14. Что такое «элемент данных»?

15. Что такое «запись»? Что такое «схема записи»?

16. Зачем нужно ключевое поле?

17. Что такое «сущность» в модели «сущность-связь»? Приведите пример.

18. Что такое «класс сущностей»?

19. Что такое «атрибуты и идентификаторы сущностей»?

20. Что такое «связи сущностей», что они определяют? Какие типы связей вам
известны?

21. Чем отличается связь один ко многим от связи многие ко многим? Приведите
примеры.

22. Каковы преимущества и недостатки ER-моделирования?

23. Что такое «реляционная модель данных»? Кем она была предложена?

24. Назовите по крайней мере две системы, применяющиеся для непрерывного
моделирования?

25. Каким условиям должны удовлетворять данные в реляционных таблицах?

26. Перечислите хотя бы 9 из 12 правил Кодда.

27. Что такое «первичный ключ»?

28. Что такое «внешний ключ», какова его роль в установлении связи между та­
блицами?

29. Что такое «ссылочная целостность»? Каковы последствия несоблюдения ссы­
лочной целостности для базы данных?


Литература 201

30. В чем заключаются первая, вторая и третья нормальные формы?

31. Какие группы операторов языка SQL вам известны?

32. Какие операторы входят в группу операторов манипулирования данными?
Каково их назначение?

33. Перечислите преимущества реляционной модели.

34. Каковы причины возникновения постреляционных моделей СУБД?

35. Чем OODM отличается от ER-модели?

36. Перечислите преимущества и недостатки OODM.

Литература

1. КренкеД. Теория и практика построения баз данных. СПб.: Питер, 2003.

2. Кузин А. В., Левонисова В. С. Базы данных. М.: Академия, 2008.

3. Марков А. С, Лисовский К. Ю. Базы данных: введение в теорию и методологию.
М.: Финансы и статистика, 2006.

4. Райордан Р. Основы реляционных баз данных. М.: Русская редакция, 2001.



Поделиться с друзьями:

Археология об основании Рима: Новые раскопки проясняют и такой острый дискуссионный вопрос, как дата самого возникновения Рима...

Организация стока поверхностных вод: Наибольшее количество влаги на земном шаре испаряется с поверхности морей и океанов (88‰)...

Эмиссия газов от очистных сооружений канализации: В последние годы внимание мирового сообщества сосредоточено на экологических проблемах...

Историки об Елизавете Петровне: Елизавета попала между двумя встречными культурными течениями, воспитывалась среди новых европейских веяний и преданий...



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.022 с.