Для автоматизованих систем керування виробництвом, установами, адміністративними територіями тощо характерні задачі прийняття рішень на основі великої кількості даних, накопичених за довгий проміжок часу. Найчастіше ці дані зберігаються у вигляді баз даних (БД), операції з якими виконуються за допомогою систем управління базою даних (СУБД). Узагальнена структура системи прийняття керівних рішень з використанням СУБД зображена на рис. 4.2.
Алгоритм прийняття рішення можна розглядати як перетворення F завдання X на рішення Y з параметрами, які отримуються на основі бази даних B і опису ситуації I
(4.15)
Таким чином, набори даних I і B є інформаційною моделлю системи прийняття рішення.
Під інформаційним потоком (information flow) розуміють кількість інформації, яка передається від однієї підсистеми до іншої за одиницю часу.
Головне питання, яке розглядається при побудові бази даних як інформаційної моделі – вибір адекватного і одночасно зручного опису типу зв’язку між елементами даних.
Сучасні СУБД ґрунтуються на використанні моделей даних (МД), які дозволяють описувати об’єкти предметних областей і взаємозв’язки між ними. Існують три основні МД і їх комбінації, на яких ґрунтуються СУБД: реляційна (РМД), мережна (ММД), ієрархічна (ІМД).
Основна відмінність між цими моделями даних полягає у способах опису взаємодії між об’єктами й атрибутами. Взаємозв’язок виражає відношення між множинами даних. Використовують взаємозв’язки "один до одного", "один до багатьох" і "багато до багатьох". "Один до одного" – це взаємно однозначна відповідність, яка встановлюється між одним об’єктом і одним атрибутом. "Багато до багатьох" – це відповідність між багатьма об’єктами й багатьма атрибутами. Взаємозв’язки між об’єктами й атрибутами зручно зображати у вигляді графів.
Hа персональних комп’ютерах в основному використовують СУБД, які підтримують реляційну модель даних. Відповідно до реляційної моделі база даних подається у вигляді сукупності таблиць, над якими можуть виконуватися операції, що формулюються у термінах реляційної алгебри і реляційного числення. В реляційній моделі операції над об’єктами бази даних мають теоретико-множинний характер.
Основними елементами реляційної БД є атрибути, кортежі, відношення. Відношенням називається деяка сукупність об’єктів, яка характеризується однаковим набором атрибутів. Зручно зображувати відношення як таблицю, де кожний рядок є кортеж і кожний стовпець є атрибут. Стовпці таблиці - це елементи даних, а рядки - записи.
Таким чином, реляційна база даних подається четвіркою <E, A, C, R>, де E – множина відношень, A – множина атрибутів, C – множина кортежів, R – множина зв’язків.
Відношення може бути подано у вигляді файла. Записи у файлі відповідають кортежам. Вони складаються з полів, які відповідають атрибутам відношення. Звя’зок між відношеннями здійснюється через ключі. Відношення не повинно мати двох кортежів, в яких збігаються всі атрибути ключа.
Основна перевага реляційного підходу - його простота й доступність, незалежність даних, гнучкість, теоретичне обґрунтування на основі реляційної алгебри.
Существует три класса объектов, представленных в модели «сущность-связь».
• Сущности (объекты) entities
• Связи (отношения) relationships
• Атрибуты attributes
Сущность
Человек Событие Место
|
|
|
Сущность - главный объект данных, который представляет значительный интерес для пользователя. Объект представляет собой нечто реальное, осязаемое или абстрактное. Сущность - это обычно существительное, представляющее человека, место, вещь или событие. Например, служащий мог бы быть сущностью в системе учета людских ресурсов (система Кадры).
Экземпляром сущности будет один специфический служащий.
Связи
• Связь представляет собой действующие в реальном мире связи (ассоциации, соединения, отношения) двух и более сущностей.
• Глагол или предлог, соединяющий две сущности, обычно подразумевает связь.
• Определение и понимание сущностей и связей - наиболее важная часть процесса проектирования реляционной базы данных.
Второй шаг в реляционном моделировании данных должен идентифицировать связи между сущностями. Связь - соединение (отношение) между двумя объектами.
Связи: система проката видео
Служащий | заказчик (клиент) | пункт проката | видео | изменение цены | аренда (прокат) | |
служащий | обрабатывает | |||||
заказчик (клиент) | арендует | размещает заказ на | ||||
Пункт проката | имеет | |||||
Видео | арендовано (кем?) | находится в | ' | имеет | находится в (прокате) | |
изменение цены | для | |||||
Аренда (прокат) | обработана | произведена | состоит из |
Отношения (связи) между объектами описаны в терминах связности (connectivity), кардинальности (cardinality) и существования (existence).
Подход «сущность-связь» предоставляет схематический синтаксис для представления связей при моделировании данных.
Наиболее общим представлением связи между объектами является связность. Связность описывает количество экземпляров (реализаций) сущностей, допускаемых в отношениях, основанных на бизнес-правилах прикладной области.
Типы связности:
• Один-к-одному (1:1)
• Один-ко-многим (1:N)
• Многие-ко-многим (N:N)
Связи "один-ко-многим" наиболее общие. Вообще говоря, Вы всегда должны пытаться представлять связи как "один-ко-многим".
Кардинальность (или мощность отношения) задает ограничения на ожидаемое или максимальное число экземпляров объекта.
Зависимость существования определяет, является ли присутствие объекта в отношении необязательным или обязательным.
Рассматривая каждую связь в обоих направлениях, Вы можете определить, являются ли объекты обязательными или нет. Модель данных "сущность - связь" предоставляет схематический синтаксис для указания зависимости существования. Это очень важно понимать при проектировании физической базы данных и разработке приложений.
Атрибут - неделимая информация, описывающая объект.
Имеются две общих классификации атрибутов: ключевые (identifier- идентификатора, ключ) и не ключевые (descriptor - дескриптор, описатель, признак). Ключевой атрибут -атрибут, который определяет уникальную характеристику отдельной сущности. Ключевым атрибутом для сущности служащий мог бы быть номер служащего. Номер служащего может быть определен таким образом, что будет всегда однозначно его идентифицировать. Не ключевой атрибут " атрибут, который определяет неуникальную характеристику отдельного экземпляра сущности. Не ключевым атрибутом сущности служащий могла бы быть фамилия. Фамилия не всегда будет однозначно идентифицировать служащего.
Домен (domain) определяет ограничения на допустимые значения, которые могут принимать
атрибуты.
Диаграммы «сущность - связь» (ER) - ценный инструмент для моделирования информационных потребностей предметной области. Они играют важную роль в методологиях проектирования реляционных баз данных.
Базисные объекты: стиль Бечмана
Сущность представляется заключенным в рамку нолем. Имя сущности помещено внутри поля в единственном числе, прописными символами. Связь представлена одиночной линией, проведенной между объектами. Окружность в конце линии связи указывает на то, что существование сущности на том конце и связи необязательно. В большинстве случаев существование связи определяют бизнес - правила прикладной области. Если существование объекта в связи необязательно, важно это обозначить, используя окружность. «Вороньи ланки» подразумевают, что один или большее количество экземпляров сущностей связаны с другими сущностями. Отсутствие «вороньих ланок» подразумевает, что только один экземпляр сущности связан с другой сущностью. Круг, обозначающий необязательность, обязательно используется, если объект в отношении необязателен.
Представление связи Стиль Бечмана: система видео проката
Связь между двумя объектами формирует простое предложение. Первая сущность - субъект (subject), а вторая сущность- объект (object). Описания отношений могут быть включены для увеличения удобства чтения диаграммы для конечных пользователей. Наиболее важные аспекты связи изображены линиями между объектами.
Связность относится к количеству одной сущности, которая связана с второй сущностью.
Избыточные связи - две или больше связей, которые используются, чтобы представить один и те же самые понятия. Вы должны проанализировать избыточные связи очень тщательно и устранить их из вашей модели данных. Допускается две или больше связи между объектами, если связи имеют различное значение.
Избыточные связи:
• Добавляют сложность
• Могут привести к неправильному размещению атрибутов
• Может быть неправильно интерпретировано, вызывая ошибки при операции манипулирования данными
В примере, приведенном выше, существует связь «помещает» (делает заказ) между заказчик и аренда и связи «состоит из» между видео и аренда.
Все объекты должны иметь только один первичный ключ. Первичный ключ должен быть атрибутом или комбинацией атрибутов, которые однозначно идентифицируют экземпляр сущности.
Составной ключ (composite кеу) - ключ, использующий два или больше атрибутов. Цель составного ключа - гарантировать однозначность (уникальность).
Суррогатный ключ (surrogate кеу) может быть добавлен к сущности для гарантии однозначности.
Внешний ключ используется для установления связи между объектами. Внешний ключ должен ссылаться па существующий первичный ключ в ассоциированной сущности. Допускается существование нескольких внешних ключей в сущности, если сущность связана со многими сущностями.
Именование атрибутов
• Установите соглашения по именам
• Используйте уникальные, значимые имена
• Избегайте синонимов и омонимов
Пустое (null) значение обозначает неизвестное значение или отсутствие такового. Пустое значение - это не то же самое, что пробел или ноль.
Для атрибута может быть определено требование уникальности. Требование уникальности указывает, что никакие два экземпляра объекта не могут иметь одинаковое значение для этого атрибута.
Нормализация
Процесс нормализации используется, чтобы гарантировать, что концептуальная модель базы данных будет работать. Ненормализованная модель может быть реализована, но это приведёт к проблемам при разработке приложении и при операциях манипулирования данными. Теория нормализации основана на наблюдении, что определенный набор соотношений имеет лучшие реквизиты для вставки, модифицирования и удаления данных в базе данных.
Нормализация уменьшает избыточность данных, облегчает их поддержку, делая их более точными и непротиворечивыми, а также уменьшает количество места, требуемого для хранения данных.
Порядок роботи:
1. Скласти перелік параметрів, які характеризують технологічний процес. У переліку зазначити тип і діапазон значень параметрів. Перелік подати у вигляді таблиці
Операція | Вхідні | Вихідні | ||||||
Параметр | Одиниця вим. | Тип | Діапазон | Параметр | Одиниця вим. | Тип | Діапазон | |
2. Розробити ER-модель реляційної бази даних технологічного процесу, для чого:
- скласти універсальне відношення
- здійснити його декомпозицію і дати найменування отриманим відношенням
- визначити кратність зв’язків між відношеннями
- побудувати ER-діаграму
3. Скласти схему системи управління технологічним процесом і показати поряд із зв’язками схеми відповідні інформаційні потоки.
Склад звіту:
6. Титульний аркуш
7. Завдання на виконання роботи
8. Короткі теоретичні відомості
9. Список параметрів, ER-модель, схему інформаційних потоків
10. Висновки
Контрольні запитання:
1. Чим інформаційна модель відрізняється від функціональної?
2. Порівняйте визначення інформаційного потоку на основі трьох мір кількості інформації. Яке з цих визначень дає найбільше чисельне значення потоку, а яке найменше?
Лабораторна робота № 6
Тема: Керування СУБД АСУТП з використанням SQL