Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Трехуровневая модель организации баз данных.

Поиск

После того, как была выработана концепция базы данных и системы управления ее, специалисты, начиная с 1971 года, стали работать над общей архитектурой и терминологией базы данных. Вопросы, касающиеся того, как должна быть устроена база данных, были решены не сразу. В течение ряда лет велись научные исследования в этом направлении, предлагались различные способы реализации. В результате многократных обсуждений предлагаемых решений в 1978 году учеными была принята трехуровневая система организации данных, предложенная Национальным Институтом стандартизации – ANSI (American National Standards Institute) и Комитетом по планированию выпуска стандартов и технических условий – SPARC Соединенных штатов Америки. В соответствии с принятой концепцией предлагается выделять три уровня абстракции представления данных: внешний, концептуальный и внутренний (рис. 1). Хотя идеология ANSI/SPARС не стала стандартом, она представляет основу для понимания основных функциональных особенностей баз данных и систем управления базами данных (СУБД).

Основное внимание в этом подходе сконцентрировано на необходимости воплощения независимости каждого уровня для изоляции программ от особенностей представления данных на более низком уровне. То есть цель этого представления – отделение пользовательского представления базы данных от ее физического представления. Фундаментальным моментом в этом подходе является выделение трех уровней абстракции, то есть трех различных уровней абстракции описания элементов данных:

- внешний уровень – это тот, на котором представляют данные пользователи;

- концептуальный уровень служит для отображения данных внешнего уровня на внутренний и обеспечивает необходимую независимость данных разных уровней друг от друга;

- на внутреннем уровне данные воспринимаются СУБД и операционной системой.

Внешний уровень – это самый верхний уровень, который отражает представление конечного пользователя о конфигурации данных (более подробно о типах пользователей баз данных будет изложено в последней лекции). Каждый пользователь представляет реальный мир по-своему, исходя из того вида работы, которую он выполняет. Остальная часть реального мира его не интересует. Некоторые представления пользователя не являются исходными, а потому в базе данных их не следует сохранять, так как они могут быть вычислены, например, вместо данных о возрасте, которые надо часто менять, следует внести в базу данные о дате рождения, и из них вычислять возраст.

Конечные пользователи часто оперируют с приложениями. Каждое приложение видит и обрабатывает только те данные, которые необходимы именно ему. Например, системе отдела кадров нужны сведения о возрасте, домашнем адресе сотрудника, а система расчета зарплаты учитывает квалификацию работника, стаж его работы.

Концептуальный уровень – это объединяющее представление данных, используемых всеми пользовательскими приложениями, работающими с данной базой. На этом уровне база данных представляет собой общий взгляд пользователя на данные проектируемой базы. Это, например, представление с точки зрения менеджера высшего уровня о данных всего предприятия. Здесь описывается: какие данные хранятся в базе, и каковы связи между ними. Этот уровень отражает логическую структуру всей базы с точки зрения администратора базы данных. В действительности концептуальный уровень отражает обобщенную модель предметной области (объектов реального мира), для которой создается база данных.

Концептуальный уровень – это попытка представить требования к базе со стороны организации. И этот уровень не должен содержать никаких сведений о методах хранения данных. Здесь должны быть отражены:

- все сущности, включаемые в базу, их атрибуты и связи;

- накладываемые на данные ограничения;

- семантическая информация о данных;

- информация о мерах обеспечения безопасности и поддержки целостности данных.

База данных на концептуальном уровне имеет высокую степень абстракции и характеризуется аппаратной и программной независимостью. Создаваемая на этом уровне концептуальная модель служит основой для идентификации и описания основных объектов данных.

Внутренний уровень служит для адаптации концептуальной модели к конкретной СУБД. Другими словами, внутренняя уровень – это представление базы данных со стороны СУБД, и на этом уровне описывается, как данные должны храниться в компьютере. А потому на этом уровне требуется, чтобы проектировщик привел свойства и ограничения концептуальной модели в соответствие с выбранной моделью реализации базы данных. Внутренний уровень предназначен для достижения оптимальной производительности и обеспечения оптимального использования дискового пространства. На этом уровне осуществляется взаимодействие СУБД с методами доступа операционной системы. Здесь хранится такая информация:

- распределение дискового пространства для хранения данных и индексов;

- описание подробностей хранения данных;

- сведения о размещении записей;

- сведения о сжатии данных и методах их шифрования.

База данных, создаваемая на этом уровне, имеет средний уровень абстракции и характеризуется аппаратной независимостью и программной зависимостью, то есть она зависит от программного обеспечения базы данных. А потому любые изменения в программном обеспечении СУБД потребуют изменений во внутренней модели, для того чтобы она соответствовала требованиям СУБД.

В действительности ниже внутреннего уровня находится еще уровень физического представления данных, то есть физический уровень, на котором описываются способы хранения информации на носителях, например, на винчестерах. Другими словами, физический уровень – это собственно данные, хранящиеся на внешних носителях информации и расположенные в файлах или страничных структурах. Этот уровень контролируется операционной системой, но под управлением СУБД. Здесь требуется определить, как устройства физического хранения, так и методы доступа, необходимые для извлечения данных с физического носителя. База данных, создаваемая на этом уровне, имеет самый низкий уровень абстракции и характеризуется аппаратной и программной зависимостью.

Предложенная архитектура позволяет обеспечить логическую и физическую независимость при работе с данными. Логическая независимость предполагает возможность изменения одного приложения без корректировки других, работающих с этой же базой данных. А физическая независимость предполагает возможность переноса хранимой информации с одних носителей на другие при сохранении работоспособности всех приложений, работающих с конкретной базой. Логическая независимость устанавливается между 1 и 2 уровнями, а физическая между 2 и 3. Именно этого не хватало при использовании файловых систем.


В соответствии с трехуровневой архитектурой существует три различных типа схем базы данных. На самом высоком уровне имеется несколько внешних схем данных, которые соответствуют разным представлениям пользователей. На концептуальном уровне описываются все элементы и связи между ними. Для каждой базы данных имеется только одна концептуальная схема. Внутренняя схема является полным описанием данных внутреннего уровня и содержит определение хранимых записей: методы представления, описание полей данных, сведения об индексах и схемах хеширования данных. СУБД отвечает за установление соответствия между этими тремя типами схем, а также за проверку их непротиворечивости.

 



Поделиться:


Последнее изменение этой страницы: 2016-08-14; просмотров: 221; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.223.239.65 (0.006 с.)