Лекция №5
Название лекции: Независимость данных. Администратор баз данных.
План:
1. Понятие независимости данных.
2. Уровни абстракции архитектуры СУБД: физическая и логическая независимость данных.
3. Администратор баз данных. Логическое проектирование БД. Список функций администратора БД при совмещении им функций системного аналитика.
1. Понятие независимости данных.
Основное, качественное отличие СУБД от предшествующих систем обработки информации является независимость данных. Для предшествующих систем сведения об организации данных и способах доступа к ним были встроены в логику и код приложения. Если, по каким-то причинам, необходимо было изменить структуру записей или способ доступа к файлу с информацией, то для приложений, не использующих технологию СУБД, необходимо было переписать приложения (программы).
СУБД построены таким образом, чтобы обеспечивать развитие БД, не оказывая существенного влияния на приложения.
2. Уровни абстракции архитектуры СУБД.
Три уровня абстракции в структуре СУБД, внешний – концептуальный – внутренний, обеспечивают два уровня независимости данных.
Первый уровень независимости данных обеспечивается отображением концептуального уровня на внутренний (физический) уровень и называется физической независимостью данных. Это отображение описывает, как концептуальные записи представлены на внутреннем уровне. Так как, отображение описывается в файле с информацией, то при изменении внутренней структуры хранимой базы, изменяется и отображение концептуальный – внутренний так, чтобы концептуальная схема осталась не изменой.
Пример: некоторое приложение работает с хранимым файлом, в котором описаны два поля «А» и «В». Если этот файл заменить на другой, в котором хранимые поля переставлены местами («В» и «А»), то это изменение структуры записи хранимого файла не приведет к нарушению работы данного приложения.
Пример: изменение размеров полей не приводит к нарушению работы ранее написанных приложений.
Второй вид независимости обеспечивается отображением внешний – концептуальный и называется логической независимостью данных. Отображение внешний – концептуальный определяет соответствие между некоторым внешним представлением и концептуальной схемой. По мере использования БД может потребоваться модификация концептуальной схемы, например, с целью включения информации о новых типах объектов или дополнительной информации об уже представленных в ней объектах.
Пример: требуется информация об уровнях шума и загрязнении атмосферы на авиарейсах компании. Если таких сведений в базе данных нет, то возможно включение в БД сведения о шуме и загрязнении каждого самолета, без перестройки уже разработанных приложений.
Некоторые модификации концептуальной схемы можно выполнить, не затрагивая существующих представлений. Другие модификации становятся возможными, если переопределить отображение схемы уровня представлений на концептуальную схему. При этом не требуется каких-либо изменений в существующих приложениях (прикладных программах). Единственный вид изменений в концептуальной схеме, который не может быть осуществлен путем переопределения соответствия между схемой представления и концептуальной схемой, это удаление информации из концептуальной схемы, соответствующей представленной во внешней схеме (схеме представлений). Такие изменения обычно требуют переработки приложений или отказ от некоторых программ.
3. Администратор баз данных.
Для реализации большой БД важную роль играют два специалиста: администратор данных (системный аналитик) и администратор БД. Иногда функции этих специалистов совмещаются в одном лице.
Администратор данных (системный аналитик) – это специалист, отвечающий за стратегию и политику принятия решений, связанных с данными предприятия на уровне представлений. Он определяет, какие именно данные необходимо сохранять в БД. Определяет объекты, в которых заинтересовано предприятие, а также информацию, которую необходимо записывать об этих объектах. Этот процесс иногда называют логическим проектированием БД. При этом осуществляется тесное взаимодействие с конкретными пользователями и формализация схем уровня представлений. Для выполнения этой работы необходим специалист знакомый с предметной областью (или способный освоить любую предметную область) и одновременно знакомый с законами и принципами программирования. Часто этот специалист уже на уровне разработки представлений может дать совет по повышению эффективности работы предприятия и на западе называется системным аналитиком (человек способный проанализировать систему).
Администратор БД – это специалист, обеспечивающий необходимую техническую поддержку реализации логического проектирования. Приведём список функций администратора БД при совмещении им функций системного аналитика:
1) Создание схем представлений.
2) Определение концептуальной схемы с помощью концептуального языка определения данных. При этом используется одна из 3-х моделей концептуального уровня.
3) Определение внутренней схемы (физическое представление) с использованием внутреннего языка определения данных. Определение соответствия между внутренней и концептуальной схемами.
4) Взаимодействие с пользователями:
- предоставления пользователям полномочий на использование БД или её частей;
- помощь пользователям в разработке схем представлений;
- определение соответствия между схемами представления и концептуальной схемой;
- консультации по разработке приложений (для прикладных программистов) обеспечение технического образования, помощь в выявлении и решении возникающих проблем.
5) Определение правил безопасности и целостности. Т.е. описание условий непротиворечивости и ограничений в доступе к файлам БД.
6) Определение процедур резервного копирования и восстановления информации после аппаратных или программных сбоев.
7) Управление производительностью и реагирование на изменяющиеся требования:
- модификация реализации концептуальной схемы внутренней (физической), если сведения об использовании БД показывают, что другая организация была бы более эффективной;
- модификация концептуальной схемы с целью устранения недостатков первоначального проекта, или в связи с изменением требований предприятия.