Скачать презентацию Классификация АЭИС по характеру представления и логической организации Скачать презентацию Классификация АЭИС по характеру представления и логической организации

Основы проектирования баз данных.ppt

  • Количество слайдов: 23

Классификация АЭИС (по характеру представления и логической организации информации) Фактографические Геоинформационные Множество экземпляров информационных Классификация АЭИС (по характеру представления и логической организации информации) Фактографические Геоинформационные Множество экземпляров информационных объектов Пространственногеографические информационные объекты Документальные Интегрированные АЭИС Документы Информационные объекты различных типов

Данные и ЭВМ • • Данные и их интерпретация разделены. Жесткая зависимость между данными Данные и ЭВМ • • Данные и их интерпретация разделены. Жесткая зависимость между данными и использующими их программами. Дублирование данных. Трудности обработки и совместного использования данных.

Концепция баз и банков данных Пользователи Администратор Бн. Д Банк данных – система информационных, Концепция баз и банков данных Пользователи Администратор Бн. Д Банк данных – система информационных, математических, программных, языковых, О ЗУ Программа пользователя 1 СУБД организационных и Программа пользователя N Операционная система технических средств, предназначенных для централизованного накопления и коллективного использования данных. Описание хранимых данных Данные База данных

База данных – это… Ø «… объективная форма представления и организации совокупности данных (например, База данных – это… Ø «… объективная форма представления и организации совокупности данных (например, статей, расчетов) систематизированных таким образом, чтобы эти данные могли быть найдены и обработаны с помощью ЭВМ» (Закон «О правовой охране программ для ЭВМ и баз данных» ) Ø «… совокупность данных, организованных по определенным правилам, предусматривающим общие принципы описания, хранения манипулирования данными, независимая от прикладных программ» (Толковый словарь по информатике) Ø «… организованная совокупность данных, которые отображают состояние объектов какой-либо предметной области и отношения между этими объектами » Ø «… файлы, снабженные описанием хранимых в них данных и находящиеся под управлением СУБД»

СУБД – это… • «… совокупность программ и языковых средств, предназначенных для управления данными СУБД – это… • «… совокупность программ и языковых средств, предназначенных для управления данными в базе данных, ведения базы данных и обеспечения взаимодействия ее с прикладными программами» (ГОСТ) • «… комплекс программных средств, реализующих создание баз данных, их поддержание в актуальном состоянии, а также обеспечивающих различным категориям пользователей возможность получать из базы данных необходимую информацию» • «… специальный пакет программ, посредством которого реализуется централизованное управление базой данных и обеспечивается доступ к данным» Основная особенность СУБД – это наличие процедур для ввода и хранения не только самих данных, но и описаний их структуры

объединение данных и их интерпретации (семантики) связанность хранящихся вместе данных минимальная избыточность и непротиворечивость объединение данных и их интерпретации (семантики) связанность хранящихся вместе данных минимальная избыточность и непротиворечивость данных использование одних данных несколькими пользователями независимость данных от использующих их программ общее управление данными для их ввода, изменения и выборки возможность наращивания приложений Функции СУБД Организация и поддержание логической структуры данных Организация и поддержание физической структуры данных Организация доступа к данным и их обработка в ОП и ВП формирование БД поддержание БД в актуальном состоянии прием и обслуживание запросов обработка информации организация совместной работы пользователей представление информации пользователю в удобной форме обеспечение целостности БД разграничение доступа к БД обеспечение реорганизации БД Задачи СУБД Свойства БД

АБД Инфологическая модель данных Обобщенное, не привязанное к ЭВМ и СУБД описание предметной области АБД Инфологическая модель данных Обобщенное, не привязанное к ЭВМ и СУБД описание предметной области Даталогическая модель данных Описание на языке конкретной СУБД Физическая модель данных Описание хранимых данных База данных Уровни моделей данных Описание Пр. О, выполненное с использованием средств, понятных всем людям, работающим над проектированием базы данных, называют инфологической моделью данных Описание, создаваемое по инфологической модели на языке описания данных СУБД, называют даталогической моделью данных. Нужные данные размещаются и отыскиваются СУБД на ВЗУ по физической модели данных. Трехуровневая архитектура позволяет обеспечить независимость хранимых данных от использующих их программ.

Структура и взаимодействие компонентов СУБД Абонентпоставщик информации Проектировщик/администратор Интерфейс ввода данных СУБД Язык и Структура и взаимодействие компонентов СУБД Абонентпоставщик информации Проектировщик/администратор Интерфейс ввода данных СУБД Язык и инструментальная среда создания интерфейса Интерфейс запросов Интерфейс выдачи Генератор отчетов Монитор транзакций Процессор описания и поддержания Процессор запросов структуры базы данных Язык БД (SQL) Машина данных База данных Абонентпотребитель информации

Назначение компонентов СУБД Процессор описания и поддержания структуры базы данных Реализует инфологическую модель БД, Назначение компонентов СУБД Процессор описания и поддержания структуры базы данных Реализует инфологическую модель БД, обеспечивает построение и поддержание внутренней схемы базы данных. Основа – инструкции ЯОД (DDL) SQL Процессор запросов Интерпретирует запросы в терминах ЯМД (DML) и совместно с процессором описания и поддержания структуры БД исполняет запросы. Основа – инструкции ЯМД (DML) SQL Машина данных Низший уровень оперирования данными на базе процессора описания и поддержания структуры БД и процессора запросов. Основа – инструкции ЯСЗ SQL (Structured Query Language) Монитор транзакций Организует совместное выполнение транзакций от нескольких пользователей (транзакция – последовательная совокупность операций модификации текущего состояния БД) Интерфейс ввода данных Реализует входной информационный язык БД, обеспечивая абонентам-поставщикам информации средства описания и ввода данных в ИС Интерфейс запросов Совместно с процессором запросов обеспечивает концептуальную модель использования ИС в части стандартных типовых запросов пользователей- абонентов Интерфейс выдачи Получает от процессора запросов результаты исполнения обращений к БД и переводит их в форму, удобную для восприятия и выдачи пользователю-абоненту ИС Генератор отчетов Выдает результаты поиска и отбора информации из БД в письменной форме для создания формализованных текстовых документов, т. е. документирования выводимых данных

Иерархическая даталогическая модель Достоинства Простота описания Наличие заранее заданных связей между сущностями Сходство с Иерархическая даталогическая модель Достоинства Простота описания Наличие заранее заданных связей между сущностями Сходство с физическими моделями данных Недостатки Для доступа к элементам необходимо пройти через верхние пути Низкая производительность Избыточность

Сетевая модель Сотрудник 1 Проект 1 Сотрудник 2 Сотрудник 3 Проект 2 Сотрудник N Сетевая модель Сотрудник 1 Проект 1 Сотрудник 2 Сотрудник 3 Проект 2 Сотрудник N Проект M Сложность и громоздкость описания связей Необходимость хранения информации о всех связях между элементами «Сетевая база – самый верный способ потерять данные»

Реляционная база данных (РБД) РБД – совокупность отношений, содержащих всю информацию БД База данных Реляционная база данных (РБД) РБД – совокупность отношений, содержащих всю информацию БД База данных «Предприятие общественного питания»

Инфологическая модель данных «Сущность – связь» – средство представления отношений между сущностями. Связь Ключ Инфологическая модель данных «Сущность – связь» – средство представления отношений между сущностями. Связь Ключ Тип сущности «Отделы» Количеств о сотруднико в Номер отдел а Наименование отдела 1 Плановый 7 2 МТС 3 Финансовый 3 4 Отдел кадров 4 Связь 5 Экземпляр сущности (кортеж) Табельны й номер Ключ Тип атрибута Тип сущности «Сотрудники» ФИО Код должност и Номер отдел а Дата зачислени я 110 3301 1 21. 04 111 Семенов Виктор Юрьевич 3302 1 13. 10. 98 112 Атрибут Зацепин Иван Петрович Федин Николай Михайлович 3303 1 16. 07. 03 113 Кретова Ирина Семеновна 3304 1 25. 11. 01 Экземпляр (значение) атрибута Сущность – любой различимый объект, информацию о котором необходимо хранить в базе данных. Тип сущности – поименованный набор однородных элементов, выступающих как целое. Экземпляр сущности (кортеж) - конкретный элемент в наборе. Атрибут – поименованная характеристика сущности, которая принимает некоторое значение из множества значений. Имеет уникальное имя в пределах отношения. (Пример: сущность «Сотрудники» имеет атрибуты Табельный номер, ФИО, Код должности и т. д. Тип атрибута ФИО имеет много экземпляров (значений): Зацепин, Семенов, Федин, Кретова). Число атрибутов в отношении называют степенью (или -арностью) отношения. Мощность множества кортежей отношения называют мощностью отношения.

Свойства отношений В ЭТИХ СВОЙСТВАХ СОСТОЯТ РАЗЛИЧИЯ МЕЖДУ ОТНОШЕНИЯМИ И ТАБЛИЦАМИ. 1. В отношении Свойства отношений В ЭТИХ СВОЙСТВАХ СОСТОЯТ РАЗЛИЧИЯ МЕЖДУ ОТНОШЕНИЯМИ И ТАБЛИЦАМИ. 1. В отношении нет одинаковых кортежей. Действительно, тело отношения есть множество кортежей и, как всякое множество, не может содержать неразличимые элементы. Таблицы в отличие от отношений могут содержать одинаковые строки. 2. Кортежи не упорядочены (сверху вниз). Действительно, несмотря на то, что мы изобразили отношение "Сотрудники" в виде таблицы, нельзя сказать, что сотрудник Зацепин "предшествует" сотруднику Семенову. Причина та же - тело отношения есть множество, а множество не упорядочено. Это вторая причина, по которой нельзя отождествить отношения и таблицы - строки в таблицах упорядочены. Одно и то же отношение может быть изображено разными таблицами, в которых строки идут в различном порядке. 3. Атрибуты не упорядочены (слева направо). Т. к. каждый атрибут имеет уникальное имя в пределах отношения, то порядок атрибутов не имеет значения. Это свойство несколько отличает отношение от математического определения отношения. Это также третья причина, по которой нельзя отождествить отношения и таблицы - столбцы в таблице упорядочены. Одно и то же отношение может быть изображено разными таблицами, в которых столбцы идут в различном порядке. 1. 4. Все значения атрибутов атомарны. 2. Это следует из того, что лежащие в их основе атрибуты имеют атомарные значения. Это четвертое отличие отношений от таблиц - в ячейки таблиц можно поместить что угодно - массивы, структуры, и даже другие таблицы.

Свойства отношений 1. В отношении нет одинаковых кортежей. 2. Кортежи не упорядочены (сверху вниз). Свойства отношений 1. В отношении нет одинаковых кортежей. 2. Кортежи не упорядочены (сверху вниз). 3. Атрибуты не упорядочены (слева направо). 4. Все значения атрибутов атомарны. Домен - это набор всех допустимых значений, которые может содержать атрибут. Понятие "домен" нельзя путать с понятием "тип данных" - физическая концепция (например, "целое число" - тип данных) "домен" – логическая концепция (например, "возраст" – домен).

Инфологическая модель данных «Сущность – связь» Ключ – минимальный набор атрибутов, по значениям которых Инфологическая модель данных «Сущность – связь» Ключ – минимальный набор атрибутов, по значениям которых можно однозначно найти требуемый экземпляр сущности. Потенциальный (уникальный) ключ Потенциальный ключ - подмножество атрибутов отношения, удовлетворяющее требованиям уникальности и минимальности (несократимости). Уникальность означает, что не существует двух кортежей данного отношения, в которых значения этого подмножества атрибутов совпадают (равны). Минимальность (несократимость) означает, что в составе потенциального ключа отсутствует меньшее подмножество атрибутов, удовлетворяющее условию уникальности. Иными словами, если из потенциального ключа убрать любой атрибут, он утратит свойство уникальности. Поскольку все кортежи в отношении по определению уникальны, в нём всегда существует хотя бы один потенциальный ключ (в крайнем случае, включающий все атрибуты отношения). В отношении может быть одновременно несколько потенциальных ключей. Один из них может быть выбран в качестве первичного ключа отношения, тогда другие потенциальные ключи называют альтернативными ключами. Теоретически, все потенциальные ключи равно пригодны в качестве первичного ключа, на практике в качестве первичного обычно выбирается тот из потенциальных ключей, который имеет меньший размер (физического хранения) и/или включает меньшее количество атрибутов. Потенциальных ключей для одного отношения может быть несколько. Потенциальные ключи могут иметь значения NULL, при этом если имеется несколько строк со значениями уникального ключа NULL, такие строки согласно стандарту SQL 92 считаются различными (уникальными). Итак, каждая сущность обладает хотя бы одним возможным ключом. Один из них принимается за первичный ключ.

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

Характеристика связей и язык моделирования Язык ER-диаграмм (Entity-Relationship) Связь ОДИН-К-ОДНОМУ (1: 1) Связь ОДИН-КО-МНОГИМ Характеристика связей и язык моделирования Язык ER-диаграмм (Entity-Relationship) Связь ОДИН-К-ОДНОМУ (1: 1) Связь ОДИН-КО-МНОГИМ (1: М) Связь МНОГИЕ-К-ОДНОМУ (М: 1) Связь МНОГИЕ-КО-МНОГИМ (М: N) Тренарные связи Пациент, имея одного лечащего врача, может иметь также несколько врачейконсультантов; врач может быть лечащим врачом нескольких пациентов и может одновременно консультировать несколько других пациентов Врач может назначить несколько пациентов на несколько анализов, анализ может быть назначен несколькими врачами нескольким пациентам и пациент может быть назначен на несколько анализов несколькими врачами

ОСНОВНЫЕ СВОЙСТВА РЕЛЯЦИОННОЙ МОДЕЛИ ДАННЫХ • • 1. Все кортежи одного отношения должны иметь ОСНОВНЫЕ СВОЙСТВА РЕЛЯЦИОННОЙ МОДЕЛИ ДАННЫХ • • 1. Все кортежи одного отношения должны иметь одно и то же количество атрибутов. 2. Значение каждого из атрибутов должно принадлежать некоторому определенному домену. 3. Каждое отношение должно иметь первичный ключ. 4. Никакие два кортежа не могут иметь полностью совпадающих наборов значений. 5. Каждое значение атрибутов должно быть атомарными, т. е. не должно иметь внутренней структуры и содержать в качестве компонента другое отношение. 6. Реляционная модель данных должна быть непротиворечивой, в частности должен выполняться 1) принцип ссылочной целостности - связи между отношениями должны быть замкнутыми, 2) значения столбцов должны принадлежать одному и тому же определенному для них домену. 7. Порядок следования кортежей в отношении не имеет значения. Порядок есть в большей степени свойство хранения данных, чем свойство непосредственно самой реляционной модели данных.

12 правил Кодда 1. Реляционная СУБД должна быть способна полностью управлять базой данных через 12 правил Кодда 1. Реляционная СУБД должна быть способна полностью управлять базой данных через ее реляционные возможности. 2. Информационное правило. 3. Гарантированный доступ. 4. Поддержка пустых значений (null value). 5. Онлайновый реляционный каталог. 6. Исчерпывающий язык управления данными. 7. Правило обновления представлений (views). 8. Вставка, обновление и удаление. 9. Физическая независимость данных. 10. Логическая независимость данных. 11. Независимость целостности. 12. Независимость распределения. 13. Неподрывность.

Классификация сущностей. Стержневая (независимая) сущность Номер свидетельства Фамилия_мужа Имя_мужа Фамилия жены Сотрудник ER-диаграмма и Классификация сущностей. Стержневая (независимая) сущность Номер свидетельства Фамилия_мужа Имя_мужа Фамилия жены Сотрудник ER-диаграмма и описание сущности традиционного брака Отчество жены Дата регистрации Брак (Номер_свидетельства, Фамилия_мужа, Имя_мужа, Отчество_мужа, Дата_рождения_мужа, Фамилия_жены, . . . , Дата_регистрации, Место_регистрации, . . . ),

Классификация сущностей. Характеристическая сущность Номер свидетельства Код_М 1 МУЖЬЯ Фамилия Имя М БРАК ER-диаграмма Классификация сущностей. Характеристическая сущность Номер свидетельства Код_М 1 МУЖЬЯ Фамилия Имя М БРАК ER-диаграмма и описание сущности многоженства СТЕРЖНЕВАЯ СУЩНОСТЬ «МУЖЬЯ» Мужья (Код_М, Фамилия, Имя, Отчество, Дата рождения, Место рождения) ХАРАКТЕРИСТИЧЕСКАЯ СУЩНОСТЬ «БРАК» Брак (Номер свидетельства, Код_М, Фамилия жены, . . . , Дата регистрации, . . . ){Мужья} ХАРАКТЕРИСТИКА (атрибут 1, атрибут 2, . . . ) {СПИСОК ХАРАКТЕРИЗУЕМЫХ СУЩНОСТЕЙ} Код_М Фамилия жены

Классификация сущностей. Ассоциативная и обозначающая сущности. Табельный номер Фамилия Имя 1 Сотрудник БРАК Табельный Классификация сущностей. Ассоциативная и обозначающая сущности. Табельный номер Фамилия Имя 1 Сотрудник БРАК Табельный номер жены 1 СТЕРЖНЕВАЯ СУЩНОСТЬ «СОТРУДНИКИ» Сотрудники (Табельный_номер, Фамилия, Имя, . . . ). Табельный номер мужа АССОЦИАТИВНАЯ СУЩНОСТЬ «БРАК» Брак [Сотрудник 1, Сотрудник 1] (Табельный_номер_мужа, Табельный_номер_жены, . . . ), Ассоциативная сущность- это связь между двумя или более сущностями, рассматриваются как полноправные сущности и могут обладать свойствами Обозначающая сущность или обозначение - это связь вида "многие-к-одной" или "одна-к-одной" между двумя сущностями и отличается от характеристики тем, что не зависит от обозначаемой сущности.