- •Введение
- •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. Методические аспекты реализации нормализации
- •Контрольные вопросы
1.2. Структура банка данных
Структурная схема БнД приведена на рис. 1.1. Здесь ВС - вычислительная система, включающая технические средства (ЭВМ или персональный компьютер, устройства ввода-вывода), операционную систему, программные средства общего назначения и программы пользователей; БД - база данных; СУБД - система управления базами данных; СД - словарь данных; ОП - обслуживающий персонал, т.е. группа сотрудников, обеспечивающая операции по сопровождению технических и программных средств БнД, по вводу и выводу текущей информации; АБД - администратор базы данных.
|
БнД |
| |||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
| ||||||||||||||||||
|
|
|
|
|
|
| |||||||||||||
ВС |
|
БД |
|
СУБД |
|
СД |
|
ОП |
|
АБД |
Рис.1.1. Структурная схема СУБД
1.2.1. База данных
База данных(БД) - это объект управления в БнД. БД описывает состояние объектов предметной области на определенный момент времени совокупностью предложений на некотором формализованном языке. При этом определяются значения всех факторов на данный момент в виде совокупности взаимосвязанных, хранящихся вместе данных.
Более подробное рассмотрение БД - предмет дальнейшего изучения.
1.2.2. Система управления базами данных
Система управления базами данных (СУБД) - это программная система для централизованного управления данными, хранимыми в БД, и их поддержания в состоянии, соответствующем предметной области. Материал по СУБД будет изложен ниже.
1.2.3. Словарь данных
Словарь данных (СД) - это специальная система для хранения единообразной и централизованной информации о всех ресурсах и данных. Он должен обеспечивать пользователей единой терминологией при обслуживании запросов по данной ПО. СД централизованно накапливает и описывает суммарные ресурсы данных БнД как при его проектировании, так и на стадии функционирования.
СД содержит информацию:
об объектах, их свойствах и отношениях для данной ПО;
о данных, хранимых в БД: наименованиях данных, их структурах; связях с другими данными; возможных значениях, форматах представления; источниках возникновения; кодах защиты и разграничениях доступа к данным со стороны пользователей.
СД должен:
способствовать уменьшению избыточности и противоречивости данных;
хранить централизованное описание данных, обеспечивающее централизованный ввод новых данных, изменение существующих либо удаление устаревших данных из системы.
В БнД в зависимости от типа СУБД могут использоваться два вида СД:
СД, интегрированный с СУБД;
независимый СД.
В первом случае в СУБД имеются программные средства ведения словаря. Описания данных хранятся в СД в единственном экземпляре и используются при работе системы. СД может выполнять и контролирующие функции.
Во втором случае для СУБД должен разрабатываться специальный пакет программ для ведения СД. Недостаток этого вида СД в том, что имеет место избыточность описания данных - в библиотеке СУБД и в СД. При этом под избыточностью БД понимается дублирование экземпляров данных в БД. Избыточность вызывает:
дополнительные ресурсы для хранения копий данных;
при модификации данного необходимо обновление всех его копий;
увеличение вероятности противоречивости информации из-за ошибок при обновлении копий данных.