Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
37
Добавлен:
16.04.2013
Размер:
1.06 Mб
Скачать
      1. Системы с базами данных.

«Не стыдись учиться в зрелом возрасте: лучше поздно, чем никогда»

ЭЗОП, VIв. до н.э.

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

Совокупность описания данных называется системным каталогом (system catalog) или словарем данных (data dictionary), элементы которых называют метаданными (т.е. данные о данных). Наличие метаописания данных обеспечивает в ней независимость между программами и данными. Это очень похоже на подход объектно-ориентированного программирования, когда внутренние определение объекта отделяется от внешнего (интерфейса). Пользователи используют только интерфейс объектов (внешнее определение) и не связаны с деталями реализации (инкапсуляция классов объектов). Такая абстракция данных (data abstraction) жестко фиксирует интерфейсы объектов при относительной независимости их внутренней реализации. Язык UML предназначен для поддержки данной абстракции при проектировании сложных программных систем. На его основе построены основные средства проектирования программных систем.

Для перехода от нашей реляционной файловой системы к простой реляционной базе данных, следуя традиции самоописания, в словарь данных (DD) мы должны внести:

  1. Каталог пользователей (UC) простой реляционной базы данных;

  2. Каталог прав (LC) пользователей на экземпляры отношений;

  3. Каталог экземпляров (EC) реляционных отношений (есть);

  4. Каталог схем (SC) экземпляров (есть).

Мы используем для представления на уровне M2 универсальное отношение и уже получили его экземпляр на уровне файловой системы petry_fs(rdbs). Остается добавить в него описание новых реляционных отношений и получить схему простой реляционной базы данных для приложения (т.е. имитатора для сетей Петри) petry_rdbs(rdbs).

Petry_fs(RDBS) + MetaN RelId AtrId DomId TypId Comnt

1 UC Parol PrlDm string пароль пользов.

1 UC UsrId UsrDm iden имя пользоват.

1 LC isLaw LowDm rwed права пользов.

1 LC UsrId UsrDm iden имя пользоват.

1 LC ExmId ExmDm iden имя экземпляра

1 LC SchId SchDm iden имя схемы

=

Petry_rdbs(RDBS)

Обратите внимание, что на метауровне мы последовательно строим модель использования данных для того, чтобы полноценно и непротиворечиво их определить. Ясно, что каждый из указанных каталогов есть экземпляр реляционного отношения, имеющее свою схему, эти экземпляры принадлежат метаданным как каталоги. При определении базы данных мы использовали понятие «логической связанности». Очевидно, что значения элементов данных не произвольные. Между ними существуют устойчивые смысловые зависимости, связанные с отражаемой предметной областью.

Мы можем полностью описать все три мета уровня в схеме нашей простой реляционной базы данных, далее мы это продемонстрируем. При этом очевидно, что обычные пользователи не должны иметь доступа к метаописаниям данных. Их должен контролировать системный администратор, который будет первым и «особым» пользователем системы. Системному администратору разрешены все операции и он несет отвественность за их состояние, а поэтому и контролирует права доступа других пользователей к данным.

Соседние файлы в папке УП_ОПТ2