Предисловие Системы управления базами данных (субд) – это программные комплексы, предназначенные для работы со специально организованными файлами (массивами данных, долговременно хранимыми во внешней памяти вычислительных систем), которые называются
Вид материала | Документы |
- Системы управления базами данных (субд). Назначение и основные функции, 30.4kb.
- Программа курса лекций "Базы данных в научных исследованиях", 49.32kb.
- Система управления базами данных это комплекс программных и языковых средств, необходимых, 150.5kb.
- Лекция 2 Базы данных, 241.25kb.
- Любая программа для обработки данных должна выполнять три основных функции: ввод новых, 298.05kb.
- Вопросы к государственному экзамену по специальности «Информационные системы и технологии», 39.93kb.
- Лекция № Технологии баз данных, 92.24kb.
- Проектирование базы данных, 642.58kb.
- Системы управления базами данных, 313.7kb.
- Программа дисциплины Системы управления базами данных Семестры, 22.73kb.
После того как база данных прошла стадию оценки, можно начинать ее эксплуатацию. К этому моменту времени БД, ее руководство, пользователи и прикладные программы представляют собой законченную информационную систему.
Начало этапа функционирования неизбежно является отправной точкой процессам вития системы. Как только все конечные пользователи начнут работать с БД, всплывут проблемы, не проявившиеся во время стадии тестирования. Некоторые из таких проблем достаточно серьезны и могут стать причиной разработки специальных программных "заплаток", в то время как другие являются мелкими недочетами. Например, если проект БД реализуется как интерфейс с Интернетом, то большой объем транзакции может вызвать сбои даже в хорошо спроектированной системе. В таком случае проектировщики должны будут идентифицировать источник (или источники) узких выработать альтернативное решение, при этом можно подключить программное обеспечение выравнивания сетевой нагрузки, чтобы распределить транзакции между несколькими компьютерами, увеличить допустимый кэш СУБД и т. д. В любом см постоянные изменения для проектировщика являются нормой.
6.4.6. Сопровождение и развитие
Администратор БД должен быть готов к процедурам, связанным с постоянными обслуживанием базы данных:
- профилактическое обслуживание (резервное копирование);
- корректирующее обслуживание (восстановление);
- адаптивное обслуживание (повышение производительности, добавление сущностей и атрибутов и т. д.);
- назначение прав доступа и их обслуживание для новых и прежних пользователей;
- ведение статистики доступа к БД для улучшения эффективности и полезное!
системного аудита и для наблюдения за производительностью системы;
- периодическая проверка безопасности на основе системной статистики;
- периодические (ежемесячные, ежеквартальные или ежегодные) сводки по А
пользованию системы для выяснения внутренних затрат и планирования бюджета предприятия.
Как уже говорилось, в системе постоянны только изменения. С учетом возможных изменений требований к информации, дополнительные формы отчетности и нон форматы запросов потребуют изменения приложений и, возможно, минимальных изменений компонентов и содержимого БД. Эти изменения можно легко реализовать только в том случае, если проект БД является гибким и если вся документам обновлена, и к ней можно получить оперативный доступ. И наступит момент, когда даже отлично спроектированную БД уже невозможно будет приспособить к нон реалиям, и тогда весь жизненный цикл DBLC начинается заново.
6.5. О стратегии проектирования базы данных
Есть два классических подхода к проектированию базы данных.
1. Нисходящее проектирование (top-down design). Начинается с определения набор» данных, затем определяются элементы данных для каждого из таких набор»
Этот процесс включает в себя идентификацию различных типов сущностей и определение атрибутов каждой сущности.
1 Восходящее проектирование (bottom-up design). При таком подходе, прежде всего, выявляются элементы данных (предметы), которые затем группируются в наборы данных. Другими словами, прежде всего, определяются атрибуты, которые затем объединяются и формируют сущности.
№ эти подхода представлены на рис. 6.14. Выбор подхода часто зависит от масштаба задачи или от личных предпочтений проектировщика. Хотя эти две методо-ЮП1И дополняют, а не исключают друг друга, все же для маленьких БД с небольшим количеством объектов, атрибутов и транзакций восходящее проектирование может оказаться более продуктивным. В случае, если количество, разнообразие и сложность сущностей, связей и транзакций велико, лучше использовать нисходящее проектирование. У большинства компаний есть стандарты по разработке систем и проектированию баз данных.
Рис. 6.14. Нисходящий и восходящий подходы к проектированию БД
Даже в выбора нисходящего подхода в процессе нормализации, при котором проверяются все существующие табличные структуры, все равно используется восходящий метод. В ER-моделировании используется нисходящая методология, даже в случае, если выбор атрибутов и сущностей выполняется с применением восходящего метода. Поскольку и ER-моделирование, и нормализация являются основой большинства проектов, трудно отделить друг от друга нисходящую и восходящую методологии.
6.6. Централизованное
и децентрализованное проектирование
На выбор одного из двух основных методов (нисходящего и восходящего) проектирования БД влияют такие факторы, как сфера действия и размер системы, стиль руководства компании или структура компании (централизованная или децентрализованная). В зависимости от этих факторов проектирование БД может быть основано на двух совершенно различных стратегиях.
□ Централизованное проектирование. Эта стратегия эффективна в том случае, когда компоненты данных состоят из относительно небольшого количества объектов и процедур. Централизованное проектирование типично для относительно простых и/или небольших баз данных и может быть выполнено одним человеком (администратором БД) или небольшой неформальной группой проектирования Деятельность компании и масштаб проблем сильно ограничены, что позволяет даже одному проектировщику определить задачи, создать концептуальный проект, проверить концептуальный проект с точки зрения пользователей, определить системные процессы и ограничения данных, чтобы обеспечить действенность проекта и гарантировать соответствие проекта всем требованиям. (Хотя централизованное проектирование типично для небольших компаний, нельзя считать, что этот метод применим исключительно для них. Даже в сравнительно больших компаниях могут использоваться относительно небольшие базы данных.) На рис. 6.15 приведены основные операции централизованного проектирования. Обратите внимание, что при этом создается и проверяется единственная концептуальная модель.
Рис. 6.15. Централизованное проектирование
П Децентрализованное проектирование. Используется в том случае, если компоненты данных состоят из большого числа сущностей и сложных связей, и на них выполняются комплексные операции. Децентрализованное проектирование также, скорее всего, будет применяться в случае, если задача сама по себе распределена по нескольким операционным сайтам, а каждый элемент представляет собой подмножество всего набора данных (рис. 6.16).
Рис. 6.16. Децентрализованная модель
В больших и сложных системах БД проектируется, как правило, не одним человеком. В таких случаях для проектирования БД, как правило, создается тщательно подобранная команда проектировщиков. В рамках децентрализованного проектирования задача проектирования БД разбивается на несколько модулей. Как только установлены критерии проекта, руководитель команды проектирования определяет группы, ответственные за выполнение фрагментов проекта или модулей. Поскольку каждая группа проекта работает с отдельным подмножеством системы, определение границ и взаимозависимостей между подмножествами данных должно быть очень тщательным. Каждая группа проектирования создает концептуальную модель данных, соответствующую моделируемому подмножеству. Каждая концептуальная модель затем проверяется индивидуально по отношению к представлению пользователя, процессам и ограничениям каждого модуля. После процесса проверки все модули интегрируются в единую концептуальную модель. Поскольку словарь данных описывает характеристики всех объектов концептуальной модели, его роль в процессе интеграции очень важна. Естественно, после того как все подмножества объединены в укрупненную концептуальную модель, руководитель команды проекта должен проверить, что составная модель может выполнять все необходимые транзакции.
Необходимо помнить, что создание единой модели может потребовать решения перечисленных ниже проблем, которые могут возникнуть в процессе объединения (рис. 6.17).
Рис. 6.17. Сводка проблем объединения
- Синонимы и омонимы. Различные подразделения могут давать одним и тем же
объектам разные имена (синонимы) или одинаковые имена могут использоваться
для различных объектов (омонимы). Объект может быть сущностью, атрибутом
или связью.
- Сущность и подтипы сущности. Атрибуты могут быть записаны с использованием
различных типов (символьный, числовой) или же для одинаковых атрибутов
могут быть определены различные домены. Определения ограничений также
могут различаться. Проектировщик должен устранить подобные конфликты.
I Резюме
I Структурирование данных происходит в процессе обработки информации приложением. Информационная система разрабатывается с целью облегчения структурирования данных и управления ими. Поэтому база данных является важнейшей частью информационной системы. Системный анализ представляет собой процесс, который устанавливает необходимость разработки и сферу действия информационной системы. Разработка системы — это процесс создания информационной системы.
Жизненный цикл разработки системы (SDLC, System Development Life Cycle) отслеживает историю (жизненный цикл) приложения в информационной системе. SDLC можно подразделить на пять стадий: планирование, анализ, подробное системное проектирование, реализация и сопровождение. SDLC является скорее итеративным, чем последовательным процессом.
Жизненный цикл базы данных (DBLC, Database Life Cycle) описывает историю (жизненный цикл) базы данных внутри информационной системы. DBLC состоит из шести этапов: начальная разработка, проектирование БД, реализация и загрузка данных, тестирование и оценка, функционирование, а также обслуживание и развитие. Также как и SDLC, процесс DBLC скорее итеративный, чем последовательный.
Поскольку база данных является основным компонентом информационной системы, процесс проектирования и реализации БД представляет для нас особый интерес. Процесс проектирования и реализации БД представляет собой серию определенных этапов.
- Анализ данных и требований помогает определить представления конечных
пользователей и потребность в данных.
- В результате первого этапа получается определение значимых сущностей, атрибутов и связей, что в свою очередь позволяет получить соответствующую ER-модель. Компоненты ER-модели определяют способ получения нормализованных таблиц.
- Концептуальная модель проверяется посредством определения ее основных процессов и заданием соответствующих правил INSERT (вставка), UPDATE (обновление) и DELETE (удаление). Кроме того, в процессе проверки просматриваются пользовательские представления и соответствующие ограничения данных.
- После проверки анализируется проектирование распределенной БД для того,
чтобы оценить местоположение таблиц, стратегию фрагментирования БД и требования доступа. ■
- В идеальном случае выбор программного обеспечения делается одновременно с
разработкой концептуальной модели (этапы 1—4). Однако на практике может
случиться так, что программное обеспечение уже имеется и концептуальное проектирование в какой-то мере будет от него зависеть.
- На основе концептуальной модели и программного обеспечения на этапе логического дизайна происходит перевод концептуальной схемы в определения таблиц, представлений и т. д, зависящих от конкретной СУБД. Логическое проектирование зависит, таким образом, от особенностей СУБД, но не зависит от
оборудования.
- На этапе физического проектирования определяются специфические структуры
хранения и пути доступа, что естественно зависит от конкретного оборудования.
- На последнем этапе реализации загружаются данные и создаются реальные таблицы и представления. При необходимости форматы атрибутов данных конвертируются в форматы, эффективно обрабатываемые имеющейся СУБД. На этом
этапе завершается кодирование и тестирование прикладных программ.
Концептуальная часть проекта может выглядеть по-разному, в зависимости от используемой стратегии проектирования.
- Нисходящая или восходящая стратегия. При восходящем проектировании, прежде всего, идентифицируются элементы данных (атрибуты), а затем они группируются в наборы (сущности). При нисходящем проектировании сначала идентифицируются сущности, а затем определяются атрибуты каждой сущности. Выбор подхода зависит от области задачи и персональных предпочтений проектировщика.
- Централизованный и децентрализованный подходы. Относительно простые базы I данных проще создавать на основе централизованного подхода, когда все действия компании хорошо просматриваются с точки зрения единой базы данных. Децентрализованный подход к проектированию имеет смысл применять в случае, когда операции компании распределены между многими сайтами (каждый набор данных на сайте является подмножеством всех операций компании) или кош база данных состоит из большого количества сущностей, между которыми есть сложные связи.
Основные термины
Автоматизированное проектирование систем — computer-assisted systems engineering (CASE)
Бизнес-правила — business-rules
Восходящее проектирование — bottom-up design
Границы — boundaries
Децентрализованное проектирование — decentralized design
Жизненный цикл базы данных — Database Life Cycle (DBLC)
Жизненный цикл разработки систем — Systems Development Life Cycle (SDLC)
Информационная система — information system
Концептуальное проектирование — conceptual design
Логическое проектирование — logical design
Модуль — module
Нисходящее проектирование — top-down design
Правило необходимого минимума информации — minimal data rule
Преобразование — transformation