ИТ в ПД – 4 курс Лекция №6 Тема лекции «Жизненный цикл базы данных» Цель: ­ ­ ­ Познакомить учащихся с жизненным циклом базы данных; Научить проектировать базы данных; Познакомить со способами обеспечения целостности базы данных Краткий конспект занятия: СУБД (система управления базами данных) – программное обеспечение, с помощью которого пользователи могут определять, создавать и поддерживать базу данных, осуществлять контролируемый доступ к ней. Система баз данных имеет ряд преимуществ, наиболее важным из которых является физическая независимость данных от пользовательских приложений (иммунитет прикладных программ к изменениям способа хранения данных и используемых методов доступа). К другим преимуществам систем баз данных относятся: возможность совместного доступа к данным нескольких существующих приложений базы данных; сокращение избыточности данных вследствие интеграции данных; устранение противоречивости данных; обеспечение целостности (корректности) данных в базе; возможность поддержки транзакций (транзакция – логическая единица работы, включающая несколько операций базы данных, являющаяся важным механизмом поодержания целостности базы данных); организация защиты данных; возможность балансирования противоречивых требований; возможность введения стандартизации данных. Основные функции СУБД: Обработка запросов пользователей к базе данных. Обработка запросов осуществляется следующим образом: а) пользователь выдает запрос на доступ к данным, применяя определенный подъязык данных (например, SQL); б) СУБД перехватывает запрос и анализирует его; в) СУБД последовательно просматривает внешнюю схему, отображение «внешнийконцептуальный», концептуальную схему, отображение «концептуальный-внутренний», определение структуры хранения, определяет местоположение требуемых данных; г) СУБД, используя методы доступа операционной системы, выполняет необходимые операции в хранимой базе данных. При выполнении операций используется механизм защиты данных от несанкционированного доступа. Определение данных. СУБД должна предоставлять средства определения данных (внешних схем, концептуальной схемы, внутренней схемы, отображений) в исходной и объектной (откомпилированной) формах. Иначе говоря, СУБД должна включать в себя компоненты процессора (компиллятора) ЯОД (языка определения данных) для каждого из поддерживаемых ею языков определения данных. Обработка данных. СУБД должна уметь обрабатывать запросы пользователя на выборку, изменение, добавление или удаление данных. Т.е., СУБД должна включать в себя компонент ИТ в ПД – 4 курс процессора (компиллятора) ЯМЛ, обеспечивающего поддержку языка манипулирования данными. Оптимизация запросов. Запросы ЯМЛ должны быть обработаны оптимизатором, назначение которого состоит в поиске достаточно эффективного способа выполнения каждого из запросов. Защита и сохранение целостности данных. СУБД должна контролировать пользовательские запросы и пресекать любые попытки нарушения ограничений защиты и сохранения целостности данных, определенные АБД. Восстановление данных и поддержка параллельности. СУБД содержит компонет, называемый менеджером транзакций, который должен обеспечивать необходимый контроль над восстановлением данных и управлением параллельностью обработки (при распределении данных). Ведения Словаря данных. СУБД должна обеспечивать функцию ведения Словаря данныых. Словарь данных содержит «данные о данных» (метаданные), т.е. определение объектов системы. Например, в Словаре данных сохраняются исходные и объектные формы всех существующих схем, отображений, установленные ограничения защиты и целостности данных, описания существующих приложений. Обеспечение производительности. СУБД должна выполнять все указанные функции с максимально возможной эффективностью. Жизненный цикл системы баз данных Система базы данных является фундаментальным компонентом более широкого понятия информационной системы. Планирование разработки базы данных – подготовительные действия, позволяющие с максимально возможной эффективностью реализовать этапы жизненного цикла базы данных. Определение требований к системе – определение диапазона действий и границ приложения базы данных, состава его пользователей и областей применения. Сбор и анализ требований пользователей – сбор и анализ информации о той части организации, работа которой будет поддерживаться с помощью создаваемого приложения базы данных, а так же ИТ в ПД – 4 курс использование этой информации для определения требований пользователей к создаваемой системе. Проектирование базы данных - это поиск способов удовлетворения функциональных требований средствами имеющейся компьютерной технологии с учетом заданных ограничений. Основными целями проектирования базы данных являются -представление данных и связей между ними, необходимых для всех основных областей применения данной информационной системы любыми существующими группами пользователей -создание моделей данных, способных поддерживать выполнение любых требуемых транзакций обработки данных -разработка предварительного варианта проекта, структура которого позволяет удовлетворить все основные требования , предъявляемые к производительности системы. Выбор целевой СУБД – выбор СУБД подходящего типа, предназначенной для поддержки создаваемой информационной системы Разработка приложений - проектирование интерфейса пользователя и прикладных программ, предназначенных для работы с базой данных. Создание прототипа – создание рабочей модели приложения баз данных Реализация - физическая реализация базы данных и разработанных приложений Конвертирование и загрузка данных – перенос любых существующих данных в новую базу данных и модификация любых существующих приложений с целью организации совместной работы с новой базой данных Тестирование – процесс выполнения прикладных программ с целью поиска ошибок Эксплуатация и сопровождение – наблюдение за системой и поддержка ее нормального функционирования по окончанию развертывания Концептуальное проектирование начинается с анализа ПО, включает анализ концептуальных требований и информационных потребностей, выявление информационных объектов (ИО) и связей между ними, построение концептуальной модели (схемы) данных. Создание логической модели базы данных - это этап, на котором на основании информационной модели предметной области базы данных создается логическая структура базы данных, независимая от ее реализации. Создание физической модели базы данных: внутренняя схема - это этап, на котором на основании логической модели базы данных создается физическая структура базы данных, зависимая от ее реализации. Концептуальное проектирование имеет целью построение независимой от СУБД информационной структуры путем объединения информационных требований пользователей. Результат проектирования часто представляется в виде диаграммы «сущность-связь» или ER-диаграммы. Логическое проектирование обеспечивает построение СУБД-ориентированной модели данных. Первоначально осуществляется выбор СУБД, далее строится соответствующая модель данных. В качестве такой модели может использоваться реляционная модель данных. Физическое проектирование заключается в выборе физической структуры базы данных. Результатом физического проектирования является полностью готовая к реализации структура БД. На этом этапе также производится окончательная отладка программных модулей, определенных ранее. 1. Целостность реляционной модели. ИТ в ПД – 4 курс При обработке данных необходима гарантия сохранения целостности данных в базе, поэтому важным этапом проектирования реляционной базы данных является обеспечение целостности базы данных. Целостность базы данных - свойство, определяемое способностью СУБД защищать компоненты и связи БД от искажений в результате некорректных операций или сбоев и отказов технических средств. Выделяют три группы правил целостности: целостность по сущностям; целостность по ссылкам; целостность, определяемая пользователем. Обеспечение целостности базы данных обеспечивается заданием ограничений целостности. Существуют так называемые правила нормализации, позволяющие избегать избыточности данных в базах. Нормализация таблиц позволяет устранить из них избыточную информацию, что приводит к уменьшению размера базы данных. Правила нормализации Первая нормальная форма (1НФ) требует, чтобы каждое поле таблицы БД было неделимым и не содержало повторяющихся групп. Вторая нормальная форма (2НФ) требует, чтобы все поля таблицы зависели от первичного ключа, то есть чтобы первичный ключ однозначно определял запись и не был избыточен. Третья нормальная форма (3НФ) требует, чтобы значение любого поля, не входящего в первичный ключ, не зависело от значения другого поля, также не входящего в первичный ключ.