- •Введение
- •Глава 1. Проектирование баз данных
- •1.1. История развития баз данных и субд
- •1.2. Введение в субд
- •1.2.1. Основные термины, понятия и определения
- •1.2.2. Классификация субд
- •1) Сетевые, корпоративные, распределенные, клиент-серверные, полнофункциональные, масштабируемые, “большие” субд.
- •2) Локальные, персональные, настольные, файл-серверные, “малые” субд.
- •1.3. Модели данных
- •1.3.1. Типы связей между объектами
- •1.3.2. Формы записи инфологической (концептуальной) модели
- •1.3.3. Уровни представления и независимости данных
- •1.3.4. Порядок взаимодействия пользователя, субд и ос
- •1.3.5. Поддержка целостности базы данных
- •1.3.6. Иерархическая модель
- •1.3.7. Сетевая модель
- •1.3.8. Реляционная модель
- •1.3.8.1. Отношения
- •1.3.8.2. Теоретико-множественные операции с отношениями
- •1.3.8.3. Правила Кодда
- •1.3.8.4. Индексирование таблиц
- •1.3.8.5. Связывание таблиц
- •1.3.9. Постреляционная модель
- •1.3.10. Многомерная модель
- •1.3.11. Объектно‑ориентированная модель
- •1.4. Модели использования баз данных в сети
- •1.4.1. Сеть
- •1.4.2. Модели использования баз данных
- •1.4.2.1. Локальная однопользовательская модель
- •1.4.2.2. Файл-серверная модель
- •1.4.2.3. Клиент-серверная модель
- •В моделях «клиент–сервер»
- •1.4.2.4. Модель удаленного доступа (rda)
- •1.4.2.5. Модель сервера данных
- •1.4.2.6. Трехзвенная распределенная модель
- •1.4.2.7. Модели серверов баз данных
- •1.4.2.8. Клиент-Интернет
- •1.4.2.9. ИнтерфейсOdbc
- •1.4.3. Мониторы обработки транзакций (tpm)
- •1.4.4. Децентрализованное управление базами данных
- •1.4.5. Таблицы в локальных сетях
- •1.5. Проектирование баз данных
- •1.5.1. Принципы и этапы проектирования и создания баз данных
- •1.4.Определение доменов атрибутов.
- •1.5. Определение первичных и вторичных ключей.
- •1.6. Определение суперклассов и подклассов для типов сущностей.
- •1.7. Создание er‑диаграмм для отдельных пользователей.
- •2.6. Создание er‑диаграмм для отдельных пользователей.
- •3.4. Создание er‑диаграммы глобальной логической модели.
- •4. Создание глобальной логической модели в среде целевой субд.
- •6. Разработка механизма защиты.
- •1.5.3. Правила формирования взаимосвязанных таблиц
- •1.5.4. Модели жизненного цикла и проектирование баз данных
- •1.5.4.1. Модели жизненного цикла
- •1.5.4.2. Обследование, системный анализ и постановка задачи
- •1.5.4.3. Инфологическое проектирование
- •1.5.4.4. Датологическое проектирование
- •1.5.4.5. Проектирование физической модели
- •1.5.4.6. Реализация, интеграция и внедрение
- •1.5.5. Выбор субд
- •1.5.5.1. Сравнение Visual FoxPro, Access, sql Server, Oracle и Excel
- •1.5.5.2. Методика балловой оценки программных средств
- •1.5.6. Case‑средства автоматизации проектирования
- •1. Ориентация на этапы жизненного цикла
- •2. Функциональная полнота
- •Пользователя в ms sql Server 7.0
- •1.6.2. Резервирование информации
- •1.6.3. Варианты разработки приложений
- •1.7. Стандартизация баз данных
- •1.8. ЯзыкSql
- •1.8.1. Введение вSql
- •1.8.2. Типы данныхSql
- •1.8.3. Оператор выбора данныхSelect
- •1.8.3.1. Назначение и синтаксис оператора
- •1.8.3.2. Объединение таблиц
- •1.8.3.3. Вложенные и коррелированные запросы
- •1.8.3.4. Запросы, использующиеExist, any, all
- •1.8.3.5. Стандартные функции
- •1.8.3.6. Запрос с группировкой
- •1.8.4. Операторы обновления базы
- •1.8.4.1. Оператор корректировки данныхUpdate
- •1.8.4.2. Оператор удаления записейDelete
- •1.8.4.3. Оператор включения записей insert
- •1.8.5. Представления
- •1.9. Транзакции
- •1.9.1. Определение транзакций
- •1.9.2. Организация транзакций
- •1.9.3. Журнал транзакций
- •1.9.4. Журнализация и буферизация
- •1.9.5. Индивидуальный откат транзакций
- •1.9.6. Восстановление после мягкого сбоя
- •1.9.7. Физическая согласованность базы данных
- •1.9.8. Восстановление после жесткого сбоя
- •1.9.9. Параллельное выполнение транзакций
- •1.9.10. Уровни изолированности пользователей
- •1.9.11. Гранулированные синхронизационные захваты
- •1.9.12. Предикатные синхронизационные захваты
- •1.9.13. Метод временных меток
- •1.10. ВстроенныйSql
- •1.10.1. Особенности встроенногоSql
- •1.10.2. Определение курсора
- •1.10.3. Открытие курсора
- •1.10.4. Чтение очередной строки курсора
- •1.10.5. Закрытие курсора
- •1.10.6. Удаление и обновление данных
- •1.10.7. Хранимые процедуры
- •Хранимой процедуры на сервере
- •1.10.8. Триггеры
- •1.10.9. ДинамическийSql
- •1.11. Архитектура субд и оптимизация запросов
- •1.12. Перспективы развития субд
- •Вопросы для самопроверки и контроля
- •1Оглавление
2.6. Создание er‑диаграмм для отдельных пользователей.
2.7. Определение требований поддержания целостности данных.Определение ограничений, налагаемых на отдельные элементы (поля, строки, таблицы, ключи, индексы, связи), правила обновления данных, бизнес‑правила, триггеры. Документирование всех ограничений.
2.8. Согласование локальных логических моделей с пользователями.Убедиться, что локальные логические модели правильно отражают представления пользователей о предметной области. При необходимости нужно вернуться назад (на соответствующий шаг) для перепроектирования.
3. Создание глобальной логической (канонической) модели данных.Объединение локальных логических моделей в единую глобальную логическую модель всей предметной области приложения.
3.1. Объединение локальных логических моделей данных в глобальную логическую модель. Анализ имен и связей сущностей, первичных ключей. Последовательное объединение сущностей и связей из отдельных локальных моделей. Устранение дублирования простых и транзитивных связей между сущностями. Выявление пропущенных сущностей и связей. Проверка корректности внешних ключей, ограничений целостности. Унификация имен и форматов представления данных, связей и других элементов модели. Выполнение чертежа (ER‑диаграммы) глобальной логической модели и ее документирование.
3.2. Проверка глобальной логической модели данных. Проверка и, при необходимости, проведение процедуры нормализации отношений. Глобальная логическая модель должна позволять выполнять все транзакции, запросы и отчеты, предусмотренные всеми пользователями. При необходимости нужно вернуться назад на соответствующий шаг.
3.3. Проверка возможностей модификации модели в будущем.Оценка приспособленности модели к возможным изменениям в будущем.
3.4. Создание er‑диаграммы глобальной логической модели.
3.5. Согласование глобальной логической модели с пользователями. Проверка соответствия модели предметной области приложения.
4. Создание глобальной логической модели в среде целевой субд.
4.1. Создание таблиц.Создание таблиц, индексов, связей, ограничений, схем (диаграмм), правил, триггеров и других элементов базы данных.
4.2. Реализация бизнес‑правил.Правила защиты, контроля, обновления и обработки данных.
5. Проектирование физического представления данных. Определение способов хранения таблиц, строк индексов и других элементов базы данных на магнитных дисках.
5.1. Анализ транзакций.Определение характеристик транзакций (частота выполнения, время доступа к данным и др.).
5.2. Настройка физической среды. Распределение файлов по различным дисководам и таблиц по файлам. Определение первичных и максимально возможных размеров файлов и их приращений. Формирование факторов заполнения страниц данных и индексов. Определение кластерных индексов.
5.3. Определение дополнительных индексов.Введение таких индексов может увеличить производительность системы.
5.4. Анализ введения избыточности данных.Анализ возможности хранения производных данных, дублирования и объединения таблиц на предмет повышения производительности системы.