Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции БД.doc
Скачиваний:
94
Добавлен:
23.09.2019
Размер:
2 Мб
Скачать
☆

Администратор бд (абд)

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

Администратор БД – это сотрудник, выполняющий следующие функции:

  • координация проектирования, реализации и ведения БД;

  • обслуживание пользователей БД;

  • определение структуры данных и правила доступа;

  • оценка перспективы и формирование требований, исходя из особенностей ПО.

Отсюда следует, что АБД должен быть не только профессионалом в области БД, но должен знать ПО, а также должен уметь общаться с людьми различных категорий: пользователями, программистами, администрацией.

Подробнее об АБД см. в [2].

Лекция 2 Модели данных Независимость данных

Прикладной программист, работая над проектом, должен знать ответы на следующие вопросы:

  • каков формат данных;

  • где они располагаются;

  • как к ним обратиться.

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

Существует два уровня независимости. Процесс проектирования начинается с установления концептуальных требований, формируется концептуальная модель (КМ) которая представляет объекты и их связи без указания способов физического хранения. Затем КМ переводится в модель данных, совместимую с выбранной СУБД, возникает логическая модель (ЛМ). Наконец, ЛМ отображается на физическую память: метод доступа и расположение. Это внутренняя, физическая, модель (ФМ).

  • 1-й уровень независимости – логическая независимость,

  • 2-й уровень – физическая независимость.

При наличии независимости на 1-м уровне решения, принимаемые в КМ, не зависят от выбираемой СУБД. Независимость на 2-м уровне означает, что реализация ЛМ не зависит от метода доступа, расположения данных, типа ЭВМ, характеризующих ФМ. Отсюда следует, что для обеспечения независимости в КМ не должны учитываться особенности СУБД, а методы доступа к данным должны быть скрыты.

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

Модель, схема

Определение. Модель данных – средство для определения логического представления физических данных, относящихся к ПО.

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

  1. Структура данных, предназначенная для представления точки зрения пользователя на БД.

  2. Множество допустимых операций, выполняемых в структуре данных, составляющее основу языка данных модели.

  3. Ограничения для контроля целостности.

Объекты, которыми оперирует модель, представляют собой сущности. Сущности могут быть в некотором отношении друг к другу: если A, B – множества сущностей, то отношение A R B показывает их связь. Модель, таким образом, представляет собой совокупность сущностей и связей. Сущности и связи имеют содержательную (смысловую) интерпретацию. Подобные модели называются моделями «сущность-связь» или, используя английскую аббревиатуру, ER-моделями [21].

Связи характеризуются кардинальными числами. Говорят об отображении один к одному (1:1), обозначается “”, один ко многим (1:M), обозначается “”, многие ко многим (M:N), обозначается “”. Связи между сущностями называются еще “ассоциациями”.

Пример

ОБЪЕКТ

АТРИБУТ

Пациент

номер, имя, адрес, диагноз, паспорт

Врач

имя, специальность

Койка

палата, номер койки

Отношения между объектами (сущностями):

(1) 1:1 пациент  койка (1) 1:1 номер  паспорт

(2) 1:М палата  пациент (2) 1:М имя  номер

(3) М:N пациент  врач (3) М:N имя пациента имя врача

Конец примера

Обычно рассматриваются три основных модели представления данных, которые отличаются ограничениями, накладываемыми на представление данных и виды связей. Это, в порядке хронологии появления, иерархическая, сетевая и реляционная модели. В настоящее время развивается и четвертый тип модели – объектно-ориентированный, но его изучение выходит за рамки данного курса.

Определим понятие схемы базы данных.

Определение. Под схемой базы данных будем понимать ее описание средствами языка определения данных.

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

Проектирование данных – процесс перевода общих представлений о данных, выраженных концептуальной моделью, в конкретную логическую модель. При ее создании полезно руководствоваться наборос простых правил, предложенных в [2]. Соблюдение каждого из них позволит обеспечить нормальную работу соответствующей информационной системы. Вот эти правила:

  • основа проектирования – концептуальные требования;

  • БД удовлетворяет информационным потребностям;

  • БД удовлетворяет требованию производительности;

  • БД удовлетворяет вновь возникающим требованиям;

  • БД расширяется в соответствии с расширением ПО;

  • БД изменяется в зависимости от изменения программной и аппаратной среды;

  • в процессе функционирования БД не изменяется корректность данных;

  • контроль достоверности данных производится до записи в БД;

  • доступ к данным осуществляется с учетом полномочий.

Теперь приведем более точное определение СУБД с учетом того, что она должна поддерживать эти правила.

Определение. СУБД – набор программных средств, позволяющих

  • обеспечить пользователя языковыми средствами манипулирования данными – языки определения данных (ЯОД) и языки манипулирования данными (ЯМД);

  • обеспечить поддержку моделей пользователя;

  • обеспечить реализацию ЯОД и ЯМД: отображение операций над данными в операции над физическими данными;

  • обеспечить защиту (полномочия) и целостность (согласованность) данных.