- •2. Реляционная модель данных
- •2.1. Определения и понятия
- •2.2. Первичные ключи и индексы
- •2.3. Реляционные отношения между таблицами
- •2.3.1. Отношение один-ко-многим
- •2.3.2. Отношение один-к-одному
- •2.3.3. Отношение многие-ко-многим
- •2.3.4. Связи между записями одной таблицы
- •2.4. Ссылочная целостность
- •2.5. Индексы
- •Упражнения и задачи
- •3. Нормализация отношений
- •3.1. Первая нормальная форма
- •3.2. Функциональные зависимости и детерминанты
- •3.3. Вторая нормальная форма
- •3.4. Третья нормальная форма
- •3.5. Нормальная форма Бойса-Кодда (нфбк)
- •3.6. Нормализация за и против
- •Контрольные вопросы
- •Упражнения и задачи
- •4. Операции с данными в реляционной модели
- •4.1. Объединение
- •4.2. Пересечение
- •4.3. Вычитание
- •4.4. Декартово произведение
- •4.5. Выбор
- •4.6. Проекция
- •4.7. Соединение
- •4.8. Деление
- •Упражнения и задачи
- •5. Запросы к бд
- •5.1. Простые запросы
- •5.2. Многотабличные запросы
- •5.3. Подзапросы
- •6. Сетевая модель данных
- •6.1. Исторический контекст
- •6.2. Основные понятия и определения
- •Торговый-агент
- •Строка-элемент
- •6.3. Преимущества и недостатки сетевых моделей
- •Упражнения и задачи
- •7. Иерархическая модель данных
- •7.1. Основные понятия и определения
- •7.2. Преимущества и недостатки иерархических моделей
- •Упражнения и задачи
- •Часть 2. Управление окружением базы данных
- •1. Администрирование баз данных
- •1.1. Функции абд
- •1.1.1. Работа с пользователями
- •1.1.2. Установление стандартов и процедур
- •1.2. Задачи абд
- •2. Защита базы данных
- •2.1. Идентификация пользователя
- •2.2. Проверка полномочий и представления данных
- •2.3. Шифровка
- •Метод поалфавитной подстановки
- •2.4. Секретность данных
- •4. Целостность данных
- •4.1. Контроль типов
- •4.2. Контроль изменений
- •4.3. Целостность на уровне ссылок
- •5. Параллельная работа с бд
- •5.1. Обработка транзакций
- •5.2. Параллельная работа с бд
- •Литература
7.2. Преимущества и недостатки иерархических моделей
В иерархической модели связи между данными, имеющими какой-либо общий признак, отражены в виде дерева-графа, где возможны только односторонние связи от старших вершин к младшим. Это облегчает доступ к необходимой информации, но только если все возможные запросы отражены в структуре дерева. Никакие иные запросы удовлетворены быть не могут. Использование иерархических моделей ускоряет доступ к информации в базе данных. Но поскольку каждый элемент данных должен содержать ссылки на некоторые другие элементы, требуются значительные ресурсы как дисковой, так и основной памяти ЭВМ. Недостаток основной памяти, конечно, снижает скорость обработки данных, для таких моделей характерна сложность реализации СУБД.
Упражнения и задачи
Базу данных, спроектированную в упражнении раздела 3, преобразуйте в виде иерархической модели.
Часть 2. Управление окружением базы данных
1. Администрирование баз данных
Администратор данных менеджер, отвечающий за определение общей политики и процедур информационной системы организации.
Администратор базы данных менеджер, отвечающий за управление техническими аспектами системы управления базами данных.
В дополнение к этим основным обязанностям АБД играет ведущую роль в планировании и разработке базы данных, а также в обучении пользователей. Обучение касается следующих вопросов:
Как технология базы данных может помочь на разных уровнях менеджмента (важно для завоевания и поддержания заинтересованности менеджеров в системе управления базами данных).
Реальные ожидания от базы данных (важно для снижения недовольства пользователей работой базы данных).
Процедуры решения информационных задач (важно для поддержания эффективности системы и удовлетворения пользовательских потребностей).
Хотя точное место АБД в структуре организации может несколько меняться, однако разумная иерархия предложена на рис. 1.1,а. Так, начальник информационного отдела подчиняется исполнительному директору, а начальнику информационного отдела подчиняется АБД. Если в компании существует АД, то АБД может быть передвинута на одну ступеньку вниз, подчиняясь АД (рис. 1.1,б).
Теперь мы переходим к рассмотрению конкретных функций, выполняемых АБД.
1.1. Функции абд
Функции АБД могут главным образом лежать в области работы с пользователями базы данных, планирования, проектирования и реализации информационных систем, а также определения стандартных процедур. Планирование, проектирование и реализация информационных систем рассматривались в предыдущих главах, и мы исключим их из дальнейшего изложения.
1.1.1. Работа с пользователями
Информационные системы часто состоят из трех компонентов: центральной, наиболее широко используемой базы данных, содержащей большую часть данных фирмы; нескольких функциональных баз данных (например, систем бухгалтерского учета), к которым обращается более узкий круг программ; а также, возможно, нескольких узкоспециализированных баз данных, к которым обращаются отдельные приложения (например, база данных учета материалов). Важный организационный принцип состоит в том, что общим результатом создания информационных систем является централизация значительной части данных компании.
Централизация данных обычно исключает индивидуальное владение данными и, таким образом, снижает их избыточность. Владение и управление данными передается центральному словарю данных, который поддерживает запись о владельце и возможности использования каждого элемента данных. Такой перенос управления может вызвать сопротивление некоторых пользователей. Преодолеть сопротивление можно при помощи активного просвещения пользователей: знакомства их с преимуществами технологии базы данных, разъяснения того, каким образом база данных может сделать более эффективной и эффектной их работу. АБД в сотрудничестве с руководством должен заниматься таким просвещением.
Решение об установке базы данных обычно означает согласие на значительные изменения работы организации на операционном уровне. АБД может сделать такие изменения более приемлемыми для работников, пропагандируя базу данных до начала ее создания. Важность подготовки ключевых работников к использованию базы данных трудно переоценить. Некоторые аспекты их текущей работы могут быть упразднены с введением базы данных, и стандартная работа систем и программ может значительно измениться. В подготовку желательно включить презентации для менеджеров, учебные семинары для персонала и, возможно, приглашение консультантов со стороны. Обучение обычно является наиболее важным элементом подготовки к изменениям.
Обучение должно дать персоналу широкое представление о функционировании данных как составной части информационной системы компании, а также специальные знания о том, как пользователи могут применять систему в своей ежедневной работе. Для того чтобы обучение было полным, оно должно рассматриваться как непрерывный процесс, подталкиваемый приемом новых работников, приобретением нового программного обеспечения, разработкой новых приложений и усовершенствованием старых.