- •Введение
- •1. Концепция информационных систем
- •1.1. Информация и данные предметных областей
- •1.2. Структура банка данных
- •1.2.1. База данных
- •1.2.2. Система управления базами данных
- •1.2.3. Словарь данных
- •1.2.4. Администратор базы данных и его функции
- •1.3. Контрольные вопросы
- •2. Инфомационное моделирование предметных областей для баз данных
- •2.1. Отображение явлений реального мира данными
- •2.2. Инфологическое моделирование по
- •2.3. Трехуровневое представление информационных объектов
- •2.4. Структурные элементы для моделирования данных
- •2.5. Ключи бд
- •2.6. Интеграция полей бд в отношения
- •2.7. Требования интеграции полей в отношения
- •2.8. Обобщенная структура модели данных в бнд
- •2.9. Er-модель бд
- •2.10. Формирование связей сущностей
- •Способ 1. Определение связи сущностей введением дополнительной сущности
- •Способ 2. Определение связей сущностей добавлением в тип сущности общих атрибутов
- •2.11. Бинарные отношения сущностей
- •2.12. Формы представления структур данных
- •2.13. Организация систем бд
- •2.14. Средства поддержки бд
- •2.15. Виды моделей данных для бд
- •Иерархическая модель данных
- •Сетевая модель данных
- •Реляционная модель данных
- •Контрольные вопросы
- •3. Системы управления базами данных
- •3.1. Функции и состав универсальной субд
- •3.2. Лингвистическое обеспечение субд
- •3.3. Независимость прикладных программ от данных
- •3.4. Операции над данными
- •Селекция данных
- •Обработка данных
- •Запросы к бд
- •3.5. Схема реализации запроса в БнД
- •Распределенная обработка данных
- •Комбинированная обработка данных
- •3.7. Целостность и ограничения целостности данных
- •3.8. Защита данных в бд
- •Контрольные вопросы
- •4.2.2. Вторичный ключ
- •4.3. Функциональные и многозначные зависимости
- •4.3.1. Функциональные зависимости
- •X y (X влечет y).
- •4.3.2. Аксиомы функциональных зависимостей
- •Контрольные вопросы
- •5. Реляционная алгебра
- •5.1. Операции над отношениями
- •5.2. Оператор "объединение" (union)
- •5.3. Оператор "вычитание" (difference)
- •5.4. Оператор "пересечение" (intersection)
- •5.5. Оператор "проектирование" (proj)
- •5.6. Оператор "выбор" (sel)
- •Комбинированный запрос с операторами proj и sel
- •5.7 Оператор "соединение" (join)
- •Запрос с соединением по одному полю
- •Алгоритм реализации
- •Запрос с соединением по нескольким полям
- •Алгоритм реализации
- •Оператор "соединение по условию"
- •5.8. Оператор "умножение" (product)
- •Запрос с оператором умножения
- •Алгоритм реализации
- •5.9. Оператор "деление" (division)
- •5.10. Оптимизация алгоритмов реализации запросов
- •Контрольные вопросы
- •6. Нормализация реляционных бд
- •6.1. Задачи нормализации Бд
- •6.2. Первая нормальная форма
- •6.3. Декомпозиция реляционных таблиц
- •Проблема дублирования, операторы реляционной алгебры для декомпозиции и объединения таблиц
- •Присоединенные записи
- •Теорема Хита
- •Критерий полной декомпозиции с исключением дублирования
- •6.4. Вторая нормальная форма
- •6.5. Третья нормальная форма
- •6.6. Экстранормализационные формы
- •Нормальная форма Бокса-Кодда
- •Четвертая нормальная форма
- •Пятая нормальная форма
- •6.7. Методические аспекты реализации нормализации
- •Контрольные вопросы
Комбинированная обработка данных
Комбинированная обработка предусматривает сбалансированное использование централизованной и децентрализованной схем обработки данных в зависимости от ситуации.
В этом случае можно использовать централизованные и децентрализованные данные. Возникающая при этом задача состоит в выборе соотношения:
в каждом узле хранится и используется собственная БД, однако их данные доступны другим узлам;
все данные в рамках задач пользователей дублируются в каждом узле полностью или частично.
При создании комбинированной системы следует учитывать, что при увеличении количества баз данных, расширении территориальной распределенности рабочих станций пользователей каждый узел телекоммуникационной сети с СУБД должен обрабатывать все большее количество транзакций в связи с большими потоками обмена по вычислительной сети. Это приводит к уменьшению надежности и производительности системы.
3.7. Целостность и ограничения целостности данных
При манипулировании данными, хранимыми в БД, или переводах БД из одного состояния в другое должна обеспечиваться их непротиворечивость. Это означает адекватность отображения данных при их перемещениях, т.е. непротиворечивость данных заданным ограничениям. С этой целью в СУБД используются логические ограничения, накладываемые на данные, которые называются ограничениями целостности. В СУБД реализуются 2 вида ограничений: внутренние и явные ограничения целостности.
Внутренние ограничения целостности представляются в модели данных в виде правил композиции допустимых структур данных. В конкретной схеме БД ограничения формулируются в структурных спецификациях и в правилах выполнения операций. Структурные спецификации – это описания допустимых структур представления данных в информационной системе.
Явные ограничения целостности специфицируются в схеме БД явным образом посредством специальных конструкций языка описания данных. ЯОД в СУБД обычно имеют развитые средства для описания явных ограничений целостности.
Пример.
В структуре записи типа Сотрудники атрибут №Таб (Табельный номер) обычно определяется как идентифицирующий. Тогда в БД в соответствии со свойствами идентифицирующего атрибута в множестве экземпляров записей типа Сотрудники не может содержаться два или более экземпляра записей с одинаковыми значениями этого атрибута.
СУБД в БнД постоянно проверяет непротиворечивость данных системе ограничений и при функционировании информационной системы обеспечивает целостность данных в БД по отношению ко всем заданным ограничениям.
3.8. Защита данных в бд
Система защиты данных в БД должна обеспечивать:
блокирование несанкционированного считывания данных;
защиту от несанкционированной модификации данных каким-либо пользователем;
защиту данных от искажения какой-либо программой.
Системы защит данных могут быть реализованы в виде:
подпрограмм защиты внутри ПП;
спецпрограмм внутри СУБД;
средств управления логическими или аппаратными ключами защиты в ОС (паролями).
В защищенной информационной системе любая ПП при считывании или модификации данных должна сообщать пароль. При контроле пароля производится сравнение пароля с замком секретности. Замок секретности может быть как константным, так и изменяемым во времени.
В больших СУБД должны быть централизованные средства защиты либо у АБД, либо у службы безопасности.