Понятие данных
Скачать 1.56 Mb.
|
Атрибут может быть определен как функция, отображающая множество сущностей в множество значений или множество связей в декартово произведение множеств значений: f: E i V i f: R i V i1 × V i2 × ... × V in Особенность функции заключается в том, что каждому экземпляру сущности соответствует точно одно значение из множества значений или каждому экземпляру связи соответствует точно одно значение из декартова произведения множеств значений. Удобное представление – в виде таблицы Первичный ключ связи – создается на основе первичных ключей сущностей, вовлеченных в эту связь. В некоторых случаях сущности в множестве сущностей нельзя уникально идентифицировать значениями только собственных атрибутов; для уникальной идентификации необходимо использовать и связь. Таким образом, имеем два способа идентификации сущностей: только значениями собственных атрибутов или с учетом связей. В соответствии с этим определяются две формы отношения сущностей – регулярное и слабое. Соответственно, связь, в которую вовлечено слабое отношение сущности, называется слабым отношением связи. Пример слабого отношения сущности: Есть сущность СОТРУДНИК, первичный ключ сущности – Табельный номер. Есть сущность ЧЛЕН БРИГАДЫ: членом бригады может быть любой сотрудник, зачисленный в эту бригаду. Отсюда, определяется связь – ЗАЧИСЛЕНИЕ В БИГАДУ, и каждый экземпляр сущности ЧЛЕН БРИГАДЫ будет идентифицироваться не только собственным атрибутом Табельный номер, но и еще с учетом связи – в какую бригаду зачислен данный сотрудник. 4. Расширенная модель данных: нотация IDEF1X. Общая характеристика, структурные компоненты модели. Методология IDEF1X - один из подходов к семантическому моделированию данных, основанный на концепции Сущность-Связь. Информационные модели типа "сущность - связь" являются логическими моделями и не зависят от реализации баз данных и методов доступа. Основными компонентами стандарта IDEF1X являются следующие: сущности, атрибуты, связи. Сущность (множество сущностей, класс объектов) - множество реально существующих или абстрактных индивидуальных объектов, которые обладают одинаковым набором свойств. Отдельный элемент этого множества называется экземпляром сущности. Каждый экземпляр сущности индивидуален и должен отличаться от других экземпляров этой сущности. Например, если предметной областью является магазин, то в ней можно выделить следующие сущности: товар, продавец, покупатель, процесс покупки товара покупателем. Каждой сущности присваивается уникальное имя. Имя сущности задается существительным в единственном числе, именительном падеже. Дополнительно каждой сущности ставится в соответствие некоторое короткое уникальное имя (номер сущности), которое обычно не несет никакой смысловой нагрузки, но в связи с компактностью обычно используется для отображения сущности в различных компонентах инфологической модели. Графически сущность отображается в виде прямоугольника с прямыми (независимая по идентификации сущность) или скругленными (зависимая по идентификации сущность) углами. Имя сущности располагается над прямоугольником. Атрибут – свойство объекта реального мира. Каждая сущность должна обладать определенным набором атрибутов. Для всех экземпляров одной сущности набор атрибутов одинаков, но их значения для каждого конкретного экземпляра сущности могут различаться. Каждый атрибут должен быть определен на соответствующем домене. Домен представляет собой именованное и определенное множество значений. На одном домене могут определяться один или несколько атрибутов. Существует два основных типа доменов: базовый (основной) домен и типизированный домен. К базовым доменам обычно относятся следующие: множество символьных строк любой длины и структуры, в состав которых входят символы любого алфавита (например, домен с именем СТРОКА); множество числовых значений (например, домен с именем ЧИСЛО); множество булевских данных (например, домен с именем БУЛЕВА ПЕРЕМЕННАЯ). Типизированный домен представляет собой подмножество базового или другого типизированного домена. Любой типизированный домен наследует правила построения родительского домена, которые обычно усиливаются дополнительными ограничениями на допустимые значения. Каждому атрибуту может быть назначено имя роли. Имя роли (функциональное имя) – это синоним атрибута, который обычно показывает роль данного атрибута в данной сущности. Взаимодействие сущностей отражается посредством связи. Связь представляет собой логическое соотношение между сущностями. При инфологическом проектировании обычно используют бинарные связи, так как они проще в определении и понимании, чем "n-арные" связи, и имеют простое графическое отображение. Кроме того, любая "n- арная" связь может быть представлено с помощью n бинарных связей. В методологии IDEF1X рассматриваются только бинарные связи. Каждая бинарная связь определяется (именуется) глаголом или глагольной фразой, выражающей некоторое ограничение или бизнес-правило. Причем именование бинарной связи осуществляется обязательно в двух направлениях. Важной характеристикой каждого конца связи является мощность. Мощностью (кардинальным числом) конца связи называется число экземпляров сущности, находящейся на данном конце связи, соответствующих одному экземпляру другой сущности, вовлеченной в эту связь. В нотациях IDEF1X определяются основные типы связей: 1. определенная связь (отражает отношение между сущностями типа "один ко многим"); 2. неопределенная связь (отражает отношение между сущностями типа "многие ко многим"); 3. связь типа категория (отражает отношение между сущностями типа "род-вид", связь типа "один к одному"). Внешний вид Тип и обязательность связи Мощность связи справа Обязательная, идентифицирующая 1 0 .. ∞ z 0 или 1 p 1 .. ∞ <число> <число> Необязательная, неидентифицирующая 0 .. ∞ Обязательная, неидентифицирующая 0 .. ∞ Определенные связи бывают идентифицирующими и не идентифицирующими. Соответственно, дочерние сущности, вовлеченные в эти связи, могут быть зависимыми или независимыми по идентификации. 1. В идентифицирующей определенной связи любой экземпляр дочерней сущности не может существовать и идентифицироваться (определяться) без некоторого экземпляра соответствующей родительской сущности, т.е. дочерняя сущность является зависимой от родительской (зависимой по идентификации и по существованию). Такая связь организуется посредством внешнего ключа, который обязательно входит в состав первичного ключа дочерней сущности. 2. В не идентифицирующей определенной связи экземпляры дочерней сущности идентифицируются независимо от экземпляров родительской сущности. Дочерняя сущность, вовлеченная в эту связь, является независимой по идентификации. Такая связь организуется посредством внешнего ключа, который не входит в состав первичного ключа дочерней сущности. Не идентифицирующая определенная связь может быть обязательной или необязательной. • В обязательной не идентифицирующей определенной связи любой экземпляр дочерней сущности не может существовать без некоторого экземпляра соответствующей родительской сущности (каждому экземпляру родительской сущности соответствует нуль, один или несколько экземпляров дочерней сущности, а каждому экземпляру дочерней сущности соответствует в точности один экземпляр родительской сущности). Дочерняя сущность, вовлеченная в эту связь, является зависимой по существованию и независимой по идентификации. При графическом отображении обязательная не идентифицирующая определенная связь обозначается пунктирной линией между связываемыми сущностями с жирной точкой на дочернем конце связи. • В необязательной не идентифицирующей определенной связи каждому экземпляру родительской сущности соответствует нуль, один или несколько экземпляров дочерней сущности, а каждому экземпляру дочерней сущности – нуль или один экземпляр родительской сущности. Дочерняя сущность, вовлеченная в эту связь, является независимой по существованию и по идентификации. При графическом отображении необязательная не идентифицирующая определенная связь обозначается пунктирной линией между связываемыми сущностями с жирной точкой на дочернем конце связи и прозрачным ромбом на родительском конце связи. Связь типа категория (иерархия наследования). Эта связь представляет собой особый тип отношения сущностей ("род- вид"), когда связываемые экземпляры сущностей отражают один и тот же объект реального мира. При организации этой связи одна из связываемых сущностей (родовая, супертип) включает в себя полное множество экземпляров некоторого объекта реального мира, а другая связываемая сущность (категория, подтип) – только часть экземпляров этого множества объектов, объединенных некоторой совокупностью одинаковых свойств, т.е. представляет собой подтип родовой сущности. Если каждый экземпляр родовой сущности обязательно связан с каким-либо экземпляром сущностей категория, то связь типа категория называется полной. Если в родовой сущности имеется экземпляр (экземпляры), который не связан ни с одним из экземпляров сущностей категории, то связь типа категория называется неполной. Графически родовая сущность изображается в виде прямоугольника с прямыми углами, а сущности категории – в виде прямоугольника со скругленными углами (сущность категория является зависимой по идентификации). 5. Расширенная модель данных: нотация IDEF1X. Основные этапы проектирования на основе IDEF1X. Методология IDEF1X - один из подходов к семантическому моделированию данных, основанный на концепции Сущность- Связь. Информационные модели типа "сущность - связь" являются логическими моделями и не зависят от реализации баз данных и методов доступа. Основными компонентами стандарта IDEF1X являются следующие: сущности, атрибуты, связи. Этапы проектирования: 1) Этап инфологического проектирования. На данном этапе строится инфологическая модель предметной области. Инфологической моделью предметной области (ИЛМ) называется описание предметной области, выполненное с использованием специальных языковых средств, без ориентации на используемые в дальнейшем программные и технические средства. Данная модель содержит исходную информацию о предметной области, необходимую для проектирования структуры базы данных. Эта информация мало зависит от особенностей СУБД. Более того, ИЛМ может успешно применяться для проектирования информационных систем, имеющих "небанковскую" организацию. Описание этой модели в терминах соответствующих языковых средств называется концептуальной схемой данных. 2) Этап даталогического проектирования. На этапе даталогического проектирования строится даталогическая модель. Даталогическая модель (ДЛМ) представляет собой отображение логических связей между элементами данных безотносительно к их содержанию и среде хранения. Эта модель строится в терминах информационных единиц, допустимых в СУБД, в среде которой проектируется база данных. Описание логической структуры данных на языке СУБД называется внутренней схемой данных. 3) Этап физического проектирования. На этапе физического проектирования строится физическая модель. Физическая модель определяет используемые запоминающие устройства и способы физической организации данных на них. Эта модель служит для привязки даталогической модели к среде хранения (к конкретным носителям информации) и обычно строится с учетом возможностей, предоставляемых СУБД. Описание структуры организации данных на физических носителях информации называется схемой хранения данных (физической схемой данных). К числу работ, выполняемых на этапе физического проектирования, относятся: выбор типа носителя информации и способа организации данных на нем, выбор метода доступа к данным на запоминающем устройстве, определение размера физического блока, управление размещением данных на носителе, управление свободной памятью, определение целесообразности сжатия данных и выбор методов сжатия и др. В настоящее время наблюдается тенденция к сокращению работ на стадии физического проектирования. Иногда эти работы бывают скрытыми от проектировщика базы данных. В связи с этим, вопросы физического проектирования базы данных не рассматриваются. 4) Этап проектирования внешних моделей. На данном этапе строится модель (или несколько моделей), описывающая логическую структуру БД с точки зрения конкретного пользователя (пользователей). Такая модель не всегда является точным подмножеством даталогической модели и называется внешней моделью (моделью пользователя), а ее описание на языке конкретной СУБД называется подсхемой данных. В общем случае внешних моделей может быть столько, сколько имеется пользователей базы данных. Использование аппарата подсхем облегчает работу пользователя, так как он должен знать структуру не всей базы данных, а только той ее части, к которой он имеет непосредственное отношение в процессе своей практической деятельности. Эта структура приспособлена к потребностям конкретного пользователя. Пользователь имеет доступ только к тем данным, которые отражены в соответствующей подсхеме, что является одним из способов защиты информации от несанкционированного доступа. Таким образом, проектирование внешних моделей аналогично проектированию даталогической модели базы данных, но с учетом требований пользователей и их уровней доступа к информации. В связи с этим в данном пособии проектирование внешних моделей отдельно не рассматривается. Как видно из рисунка, после того как поставлена задача проектирования базы данных, первой строится инфологическая модель. Затем на ее основе строится даталогическая модель. Далее происходит проектирование физической и внешних моделей. Причем физическая и внешние модели могут строиться в любой последовательности, в том числе и параллельно. При проектировании базы данных возможен возврат на предыдущие этапы с целью уточнения и корректировки соответствующих моделей. 6. Реляционная модель данных. Базовые объекты реляционной модели. Фундаментальные свойства отношений. Нормализация отношений. Реляционная модель данных (РМД) была разработана сотрудником IBM Э.Ф. Коддом (E.F. Codd) в 1969-70 г.г. на основе математической теории отношений. Достоинства: – небольшой набор абстракций, которые позволяют сравнительно просто моделировать значительную часть предметной области и допускают точные формальные определения, оставаясь интуитивно понятными; – мощный математический аппарат – модель данных опирается главным образом на теорию множеств и математическую логику; обеспечивает теоретический базис реляционного подхода к реализации базы данных; – ненавигационное манипулирование данными, что исключает необходимость знания конкретной физической организации базы данных во внешней памяти. Недостатки: – ограниченность при использовании в областях применения, требующих предельно сложные структуры данных (например, в системах автоматизированного проектирования); – невозможность адекватного отображения семантики предметной области. Реляционная модель данных определяет структурную и целостную части, а также и манипуляционную часть: • для описания структуры и ограничений, накладываемых на структуру, используется язык описания данных (ЯОД); • для манипуляций с данными используется язык манипулирования данными (ЯМД). Особенности реляционной модели данных: • определена манипуляционная часть – конкретный набор операций, функциональные возможности, • имеются конкретные языки описания данных, ограничений, накладываемых на данные, и манипулирования данными, • современные реляционные СУБД используют единый язык – SQL, в котором объединены и ЯОД, и ЯМД. Базовые структурные компоненты реляционной модели данных – это домены и атрибуты, отношения, связи: 1. Домены и атрибуты (столбцы) – свойства, описывающие сущность. Простые: ГОД = {1985, 2003, 2000}, составные: ИСТОРИЯ ЗАРПЛАТЫ = {{<1985, 500>, <2000, 1000>}} Домен – множество элементов одного типа. Атрибуты задают способ использования домена внутри отношения. 2. Отношения (таблицы) - представление конкретной сущности из предметной области. Свойства отношения: 1. Каждый атрибут отношения имеет уникальное в данном отношении имя. 2. Каждый атрибут определен на каком-то одном домене. 3. На одном и том же домене может быть определено несколько атрибутов. 4. Имя атрибута может совпадать с именем домена. 5. Порядок следования атрибутов не устанавливается. 6. В отношении нет совпадающих кортежей (каждый кортеж уникален). 7. Порядок следования кортежей не устанавливается. 8. Отношение имеет имя, которое в схеме базы данных отличается от имен всех других отношений. Отношение R = { , d 2 , …, d n > таких, что d i ∈ D i , i = 1, 2, …, n } Нормализованное отношение – это отношение, в котором каждое значение атрибутов является атомарным. Пример: D 1 = {a, b, c}, D 2 = {1, 2}. R 1 = {, Нормальная форма — требование, предъявляемое к структуре таблиц в теории реляционных баз данных для устранения из базы избыточных функциональных зависимостей между атрибутами (полями таблиц). Процесс преобразования базы данных к виду, отвечающему нормальным формам, называется нормализацией. Нормализация позволяет обезопасить базу данных от логических и структурных проблем, называемых аномалиями данных. К примеру, когда существует несколько одинаковых записей в таблице, существует риск нарушения целостности данных при обновлении таблицы. Таблица, прошедшая нормализацию, менее подвержена таким проблемам, т.к. ее структура предполагает определение связей между данными, что исключает необходимость в существовании записей с повторяющейся информацией. 1. Первая нормальная форма (1NF). Таблица находится в первой нормальной форме, если каждый её атрибут атомарен и все строки различны. Под выражением «атрибут атомарен» понимается, что атрибут может содержать только одно значение. Таким образом, не соответствуют 1NF таблицы, в полях которых могут храниться списки значений. Для приведения таблицы к 1NF обычно требуется разбить таблицу на несколько отдельных таблиц. 2. |