Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Модели данных




Хранимые в базе данные имеют определенную структуру – описываются некоторой моделью представления данных, поддерживаемой СУБД. К числу классических относятся следующие модели: иерархическая, сетевая, реляционная, постреляционная, многомерная, объектно-ориентированная.

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

Сетевая модель: позволяет отражать разнообразные взаимосвязи элементов данных в виде правильного графа, обобщая тем самым иерархическую модель. Для описания иерархической БД используется две группы типов: «запись» и «связь». Тип «связь» определяется для двух типов «запись»: предка и потомка. Сетевая БД состоит из набора записей и набора соответствующих связей. К числу важнейших операций манипулирования данными баз сетевого типа можно отнести: поиск записи в БД, переход от предка к первому потомку, от потомка к предку, создание новой записи, удаление\обновление текущей записи, включение\исключение записи в\из связи, изменение связей и др. Достоинства: возможность эффективной реализации по показателям затрат памяти и оперативности, большие возможности в смысле допустимости образования произвольных связей. Недостатки: высокая сложность и жесткость системы БД, сложность для понимания и выполнения обработки информации обычным пользователем.

Реляционная модель: основывается на понятии отношений. Отношение представляет собой множество элементов, называемых кортежами. Наглядной формой представления отношения является двумерная таблица. Таблица имеет строки (записи) и столбцы (колонки). Каждая строка таблицы имеет одинаковую структуру и состоит из полей. Строкам таблицы соответствуют кортежи, а столбцам – атрибуты отношения. Т.к. в рамках одной таблицы не удается описать сложные логические структуры, то применяется связывание таблиц. Достоинство: простота, понятность и удобство физической реализации на ЭВМ. Недостатки: отсутствие стандартных средств идентификации отдельных записей и сложность описания иерархических и сетевых связей.

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

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

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

 

3. Модель сущность-связь (ER-модель). Сущность и атрибуты.

В реальном проектировании структуры базы данных применяется метод - так называемое, семантическое моделирование. Семантическое моделирование представляет собой моделирование структуры данных, опираясь на смысл этих данных. В качестве инструмента семантического моделирования используются различные варианты диаграмм сущность-связь (ER - Entity-Relationship).

Основные понятия ER-диаграмм: сущность, атрибут и связь.

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

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

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

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

Наименование атрибута должно быть выражено существительным в единственном числе (возможно, с характеризующими прилагательными). Примерами атрибутов сущности "Сотрудник" могут быть такие атрибуты как "Табельный номер", "Фамилия", "Имя", "Отчество", "Должность", "Зарплата" и т.п.

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

 

 

4. Связи между сущностями и их виды. Примеры. (привела сложные примеры, кто хочет может вспомнить Астаховские связи между преподавателями, учениками и аудиториями) (с) Лена Зимовец

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

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

Основные виды связи: Между таблицами могут устанавливаться бинарные (между двумя таблицами), тернарные (между тремя таблицами) и, в общем случае, n-арные связи. Рассмотрим наиболее часто встречающиеся бинарные связи. При связывании двух таблиц выделяют основную и дополнительную (подчиненную) таблицы. Логическое связывание таблиц производится с помощью ключа связи. Ключ связи, по аналогии с обычным ключом таблицы, состоит из одного или нескольких полей, которые в данном случае называют полями связи (ПС).

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

• один — один (1:1);

• один — много (1:М);

• много — один (М:1);

• много — много (М:М или M:N).

Характеристика полей связи по видам 1:1 1:М М:1 М:М

Поля связи основной таблицы Являются ключом Являются ключом не являются ключом Не являются ключом

Поля связи дополнительной таблицы являются ключом Не являются ключом являются ключом не являются ключом

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

Связь вида 1:1 Связь вида 1:1 образуется в случае, когда все поля связи основной и дополнительной таблиц являются ключевыми. Поскольку значения в ключевых полях обеих таблиц не повторяются, обеспечивается взаимно-однозначное соответствие записей из этих таблиц. Сами таблицы, по сути, здесь становятся равноправными.

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

Связь вида 1:М Связь 1:М имеет место в случае, когда одной записи основной таблицы соответствует несколько записей вспомогательной таблицы.

Пример: Пусть имеются две связанные таблицы 02 и Д2. В таблице 02 содержится информация о видах мультимедиа-устройств ПЭВМ, а в таблице Д2 — сведения о фирмах-производителях этих устройств, а также о наличии на складе хотя бы одного устройства

Таблица 02:

Код Вид устройства

а CD-ROM

б CD-Recorder

в Sound Blaster

Таблица Д2:

Код Фирма-производитель Наличие

А Acer Да

А Mitsumi Нет

А NEC Да

А Panasonic Да

А Sony Да

Б Philips Нет

Б Sony Нет

Б Yamaha Да

В Creative Labs да

Таблица Д2 имеет два ключевых поля, так как одна и та же фирма может производить устройства различных видов. В примере фирма Sony производит устройства считывания и перезаписи с компакт-дисков. Сопоставление записей обеих таблиц по полю «Код» порождает псевдозаписи вида: (a, CD-ROM, Acer, да), (a, CD-ROM, Mitsumi, нет), (a, CD-ROM, NEC, да), (a, CD-ROM, Panasonic, да), (a, CD-ROM, Sony, да), (б, CD-Recorder, Philips, нет), (б, CD-Recorder, Sony, да) и т. д. Если свести псевдозаписи в новую таблицу, то получим полную информацию обо всех видах мультимедиа-устройств ПЭВМ, фирмах, их производящих, а также сведения о наличии конкретных видов устройств на складе.

Связь вида М:1 Связь М:1 имеет место в случае, когда одной или нескольким записям основной таблицы ставится в соответствие одна запись дополнительной таблицы.

Пример: Рассмотрим связь таблиц ОЗ и ДЗ. В основной таблице ОЗ содержится информация о названиях деталей (Поле11), видах материалов, из которого детали можно изготовить (Ноле12), и марках материала (Поле13). В дополнительной таблице ДЗ содержатся сведения о названиях деталей (Поле21), планируемых сроках изготовления (Поле22) и стоимости заказов (Поле23).

Таблица ОЗ:

Поле11 Поле12 Поле13

Деталь 1 чугун марка1

Деталь 1 чугун марка2

Деталь 2 сталь марка1

Деталь 2 сталь марка2

Деталь 2 сталь маркаЗ

Деталь З алюминий -

Деталь 4 чугун марка2

Таблица ДЗ

Поле21 Поле22 Поле23

Деталь 1 4.03.98 90

Деталь 2 3.01.98 35

Деталь З 17.02.98 90

Деталь 4 6.05.98 240

Связывание этих таблиц обеспечивает такое установление соответствия между записями, которое эквивалентно образования следующих псевдозаписей: (деталь1, чугун, марка1, 4.03.98, 90), (деталь1, чугун, марка2, 4.03.98, 90), (деталь2, сталь, марка1, 3.01.98, 35), (деталь2, сталь, марка2, 3.01.98, 35), итд. Полученная псевдотаблица может быть полезна при планировании или принятии управленческих решений, когда необходимо иметь все возможные варианты исполнения заказов по каждому изделию. Отметим, что таблица ОЗ не имеет ключей и в ней возможно повторение записей. Если таблицу ДЗ сделать основной, а таблицу ОЗ — дополнительной, получим связь вида 1:М. Поступив аналогично с таблицами 02 и Д2, можно получить связь вида М: 1. Отсюда следует, что вид связи (1:М или М: 1) зависит от того, какая таблица является главной, а какая дополнительной.

Связь вида М:М Самый общий вид связи М:М возникает в случаях, когда нескольким записям основной таблицы соответствует несколько записей дополнительной таблицы.

Пример: Пусть в основной таблице 04 содержится информация о том, на каких станках могут работать рабочие некоторой бригады. Таблица Д4 содержит сведения о том, кто из бригады ремонтников какие станки обслуживает.

Таблица 04:

Работает На станке

Иванов А.В. Станок 1

Иванов А.В. Станок 2

Петров Н.Г. Станок 1

Петров Н.Г. Станок З

Сидоров В.К. Станок 2

Таблица Д4:

Обслуживает Станок

Голубев Б.С. Станок 1

Голубев Б.С. Станок З

Зыков А.Ф. Станок 2

Зыков А.Ф. Станок З

 

Первой и третьей записям таблицы 04 соответствует первая запись таблицы Д4 (у всех этих записей значение второго поля — «станок 1»). Четвертой записи таблицы 04 соответствуют вторая и четвертая записи таблицы Д4 (во втором поле этих записей содержится «станок З»). Исходя из определения полей связи этих таблиц можно составить новую таблицу с именем «04+Д4», записями которой будут псевдозаписи. Записям полученной таблицы можно придать смысл возможных смен, составляемых при планировании работы. Для удобства, поля новой таблицы переименованы (кстати, такую операцию предлагают многие из современных СУБД).

Таблица «04+Д4»

Работа Станок Обслуживание

Иванов А. В. станок1 Голубев Б.С.

Иванов А.В. станок2 Зыков А.Ф.

Петров Н.Г. станок1 Голубев Б.С.

Петров Н.Г. станокЗ Голубев Б.С.

Петров Н.Г. станокЗ Зыков А.Ф.

Сидоров В.К. станок2 Зыков А.Ф.

Приведенную таблицу можно использовать, например, для получения ответа на вопрос: «Кто обслуживает станки, на которых трудится Петров Н.Г.?». Очевидно, аналогично связи 1:1, связь М:М не устанавливает подчиненности таблиц. Для проверки этого можно основную и дополнительную таблицу поменять местами и выполнить объединение информации путем связывания. Результирующие таблицы «04+Д4» и «Д4+04» будут отличаться порядком следования первого и третьего полей, а также порядком расположения записей.

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

 




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


Дата добавления: 2015-05-10; Просмотров: 485; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.012 сек.