
- •Глава 1 Основные понятия экономических информационных систем
- •1.1 Основные понятия и определения экономических информационных систем
- •1.2 Принципы построения и функционирования эис
- •1.3 Критерии эффективности эис
- •1.4 Классификация эис
- •1.5 Теория организации. Использование концепции многоуровневых систем в теории организаций.
- •1) Участники.
- •2) Структура организации
- •3) Методология.
- •1.6 Формализация основных понятий теории opганизаций в рамках теории многоуровневых систем
- •1.7 Предметная область
- •1.8 Компоненты экономических информационных систем
- •1.9 Классификация и основные свойства единиц информации
- •Пример:
- •Основные операции над единицами информации:
- •1.10 Экономические показатели и документы
- •1.11 Детализация представлений эис
- •1.12. Жизненный цикл эис
- •1.13. Цели и методы модификации эис
- •Глава 2. Модели данных
- •2.1. Модели данных. Реляционная модель данных
- •2.2. Функциональные зависимости и ключи
- •2.3. Нормализация отношений
- •2.4. Вторая и третья нормальные формы отношений
- •2.5. Ациклические базы данных
- •2.6. Сетевая модель данных
- •2.7.Организация веерного отношения в памяти эвм
- •2.8. Иерархическая модель данных
- •2.9. Сравнение моделей данных
- •2.10. Модель инвертированных файлов и информационно-поисковые системы
- •Глава 3. Методы организации данных
- •3.1 Методы организации данных в памяти эвм
- •3.2. Последовательная организация данных.
- •3.3. Цепная (списковая) организация данных
- •3.4. Древовидная организация данных
- •3.5. Сравнение методов организации данных
- •3.6. Организация данных во внешней памяти эвм
- •Глава 4. Моделирование предметных областей в экономике.
- •4.1. Семантические модели данных
- •4.2. Модель сущностей и связей
- •4.4. Базы знаний
- •4.5. Продукционная модель знаний
- •4.6. Фреймы
- •4.7. Семантические сети для представления знаний
- •4.8. Сравнение моделей знаний
- •4.9. Тезаурусы экономической информации
- •Глава 1 Основные понятия экономических информационных систем .. 3
- •1.1 Основные понятия и определения экономических информационных систем ……………………………………………………………………………….3
- •Глава 2 Модели данных ……………………………… ……………... 31
- •Глава 3 Методы организации данных ………………………………. 49
- •Глава 4 Моделирование предметных областей в экономике.
2.2. Функциональные зависимости и ключи
Функциональные зависимости определяются для атрибутов, находящихся в одном и том же отношении, удовлетворяющем 1НФ.
Простейший случай функциональной зависимости охватывает 2 атрибута. В отношении R(A,B,...) атрибут А функционально определяет атрибут В, если в любой момент времени каждому значению А соответствует единственное значение В (обозначается А —> В).
Отсутствие функциональной зависимости обозначается А—/-> В.
Рассмотрим пример с атрибутами ФИО и ГР (год рождения) в отношении R1.
R1 |
|
ФИО |
ГР |
Иванов |
1960 |
Зуев Смирнов |
1963 1960 |
Яшина |
1961 |
Рисунок 2.4 Отношение (ФИО, ГР)
Предположим, что в столбце ФИО представлены сведения о разных людях и соответствующие значения в столбце не повторяются. Тогда можно утверждать наличие функциональной зависимости ФИО -> ГР, поскольку каждому значению атрибута ФИО в отношении R1 соответствует единственное значение атрибута ГР. Можно утверждать, что это ограничение будет соблюдаться и далее, так как оно перефразируется в утверждение: у каждого человека единственный год рождения, которое справедливо.
Практически каждое ограничение для проверки функциональной зависимости можно преобразовать в утверждение о свойствах объектов предметной области, которое можно проверить, не анализируя множество значений соответствующего отношения. Именно так мы и будем поступать в дальнейшем. Наличие в столбце ГР повторяющихся годов (1960) не опровергает установленной нами зависимости, но это означает ГР —/-> ФИО.
Одновременное соблюдение двух зависимостей вида А —> В и В —> А называется взаимно-однозначным соответствием и обозначается А --> В.
В качестве примера рассмотрим отношение R2 с атрибутами Магазин и Расч (номер расчетного счета).
R2 |
|
Магазин |
Расч |
ММЗ Динамо АТЭ |
704098 122095 440162 |
Рисунок 2.5 Отношение R2(Магазин, Расч)
Можно утверждать, что у каждого магазина единственный номер расчетного счета и каждый расчетный счет принадлежит единственному магазину. Это доказывает справедливость функциональных зависимостей Магазин —> Расч и Расч — Магазин, т.е. Магазин < —>Расч.
Наконец, самыми распространенными являются случаи отсутствия функциональных зависимостей, например, ФИО —/—> Дисциплина и Дисциплина —/-> ФИО в отношении R3, описывающем экзамены студентов. Здесь каждый студент сдает экзамены по нескольким дисциплинам, и по каждой дисциплине экзамен сдается многими студентами.
-
R3
ФИО
Дисциплина
Петров Федин Алешин Петров
Физика
Химия
Физика
Химия
Рисунок 2.6 Отношение R3 (ФИО, Дисциплина)
Таким образом, для атрибутов А и В некоторого отношения возможны следующие ситуации:
- отсутствие функциональной зависимости,
- наличие А —> В (или В —> А), но не обе зависимости вместе,
- наличие взаимно –однозначного соответствия А< —> В.
Понятие функциональной зависимости распространяется на ситуацию с тремя и более атрибутами в следующей форме. Группа атрибутов (для определенности А,В,С) функционально определяет атрибут D в отношении T(A,B,C,D,....), если каждому сочетанию значений (а,Ь,с) соответствует единственное значение d (а - значение A, b - значение В, с - значение С, d - значение D). Наличие такой функциональной зависимости будем обозначать А,В,С —> D.
Пусть в отношении Т1 представлены сведения о закончившихся экзаменах. Ограничение, состоящее в том, что студент не может в один день сдать два и более экзаменов, означает справедливость ряда функциональных зависимостей:
Т1 |
||||
ФИО |
Дисциплина |
Дата |
Преподаватель |
Оценка |
Петров |
Физика |
01.06.98 |
Иванов |
4 |
Федин |
Химия |
01.06.98 |
Смирнов |
5 |
Алешин |
Физика |
01.06.98 |
Иванов |
5 |
Петров |
Химия |
07.06.98 |
Смирнов |
5 |
Рисунок 2.7 Отношение Т1(ФИО, Дисц., Дата, Преподав., Оценка)
ФИО, Дата — Дисциплина,
ФИО, Дата —> Преподаватель,
ФИО, Дата —> Оценка.
Невнимание к способам кодирования атрибутов может привести к несоответствию функциональных зависимостей и хранящихся данных, что является серьезной проектной ошибкой.
Для показателя со множеством атрибутов-признаков Р= {Р 1 ,Р2,... ,Рп} и атрибутом-основанием Q справедлива функциональная зависимость Р —> Q, хотя нельзя утверждать, что это единственная зависимость на указанных атрибутах.
С помощью функциональных зависимостей определяется понятие ключа отношения, точнее ряд разновидностей ключей - вероятные, первичные и вторичные.
Вероятным ключом отношения называется такое множество атрибутов, что каждое сочетание их значений встречается только в одной строке отношения, и никакое подмножество атрибутов этим свойством не обладает. Вероятных ключей в отношении может быть несколько.
Рассмотрим пример: отношение ТЗ (имена и значения атрибутов - условные):
ТЗ |
||||
ZEN |
RAM |
AST |
SPIM |
BIG |
1А |
31 |
Dwa |
Wii |
73 |
3В |
21 |
Bun |
Cup |
40 |
3D |
30 |
Mun |
Lam |
58 |
40 |
31 |
Sab |
Wii |
40 |
7В |
30 |
Sab |
Irt |
38 |
Рисунок 2.8 Отношение Т3 (ZEN, RAM, AST, SРМ, BIG)
Можно утверждать, что вероятным ключом отношения ТЗ является атрибут ZEN (значения в столбце ZEN не повторяются). Кроме того, еще один вероятный ключ представлен парой атрибутов RAM, AST.
Важность вероятных ключей при обработке данных определяется тем, что выборка по известному значению вероятного ключа дает в результате одну строку отношения либо ни одной.
На практике атрибуты вероятного ключа отношения связываются со свойствами тех объектов и событий, информация о которых хранится в отношении. Если в результате корректировки отношения изменились имена атрибутов, образующих ключ, то это свидетельствует о серьезном искажении информации. Следовательно, систематическая проверка свойств вероятного ключа позволяет следить за достоверностью информации в отношении.
Когда в отношении присутствует несколько вероятных ключей, одновременное слежение за ними очень затруднено и целесообразно выбрать один из них в качестве основного (первичного).
Первичным ключом отношения называется такой вероятный ключ, по значениям которого производится контроль достоверности информации в отношении.
Применительно к экономической информации в подавляющем большинстве случаев отношения, полученные из существующих экономических документов, содержат единственный вероятный ключ, который является и первичным ключом. Наличие двух и более вероятных ключей в отношениях с осмысленной информацией можно объяснить наличием нескольких возможных способов интерпретации одних и тех же данных. Первичный ключ часто называется просто ключ.
В отношениях с большим числом строк нахождение первичного ключа путем непосредственного применения определения достаточно затруднено. Кроме того, на стадии проектирования ЭИС значения многих отношений просто неизвестны. Поэтому практически первичный ключ отношения определяется по известным функциональным зависимостям.
Каждое значение первичного ключа встречается только в одной строке отношения. Значение любого атрибута в этой строке также единственное. Если через К обозначить атрибуты первичного ключа в отношении R(A,B,C,... ,J), то справедливы следующие функциональные зависимости К —> А, К —> В, К —> С,..., К — J. Набор атрибутов первичного ключа функционально определяет любой атрибут отношения. Обратное также верно: если найдена группа атрибутов, которая функционально определяет все атрибуты отношения по отдельности, и эту группу нельзя сократить, то найден первичный ключ отношения.
Вернемся к отношению Т1 с функциональными зависимостями:
ФИО, Дата — Дисциплина,
ФИО, Дата —> Преподаватель,
ФИО, Дата — Оценка.
Нетрудно установить, что
ФИО, Дата —> ФИО,
ФИО, Дата — > Дата
(в каждом сочетании значений ФИО, Дата значение ФИО встречается один раз). Следовательно, первичный ключ в отношении Т1 составляют атрибуты ФИО, Дата и при поиске ключа не потребовались конкретные значения Т1.
Знание ключа отношения позволяет устанавливать ряд функциональных зависимостей, например, в ТЗ ZEN— BIG, RAM, AST —> BIG.
Если заранее известно, что вероятный ключ в отношении только один, то его можно найти простым способом. Вероятный ключ (если он единственный, т.е. совпадает с первичным ключом) - это набор атрибутов, которые не встречаются в правых частях всех функциональных зависимостей. Иными словами, из полного списка атрибутов отношения необходимо вычеркнуть атрибуты, встречающиеся в правых частях всех функциональных зависимостей. Оставшиеся атрибуты образуют первичный ключ.