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

«Как ни коротки слова «да» и «нет», они требуют серьёзного размышления»

ПИФАГОР Самосский, VI-Vвв. до н.э.

Мы можем описать метаданные в виде одного реляционного отношения (таблицы). Но такая форма будет мало понятной и избыточной. Есть много вариантов структуры словаря данных с использованием «логической связанности» понятий. Можно, а почему станет ясно потом, представить каждый из каталогов (UC, LC, EC, SC)реляционным отношением.

Каталог схем SC - наследник схемы схем. Он содержит описание всех используемых в РБД схем реляционных отношений. Его собственная схема включает атрибуты схемы SS и новые атрибуты, содержащий идентификаторы схем, признак ключа и номер метауровня. По значению идентификатора схемы SC мы выделяем описания всех кортежей - атрибуты этой схемы. Первой группой кортежей в экземпляре SC следует описание самой схемы SC (принцип самоописания), а затем EC, LC, UC (права манипулирования с ними принадлежат исключительно системному администратору БД). За ними описываются схемы реляционных отношений, образующие предметную область (в нашем случае – исходных данных и результатов моделирования сетей Петри). Доступ к ним пользователей идет под контролем системного администратора.

Схема SC содержит атрибуты:

  1. MetaN – номер метауровня схемы реляционного отношения (ключевой атрибут);

  2. SchId – идентификатор схемы, к которому относится атрибут (ключевой атрибут);

  3. AtrId – идентификатор атрибута схемы (ключевой атрибут);

  4. isКеу – свойство атрибута: ключевой/неключевой;

  5. DomId – идентификатор домена атрибута;

  6. TypId – идентификатор типа данных значения атрибута.

  7. Comnt – коментарий к кортежу отношения.

Рассмотрим возможную структуру наполнения каталога схем (см. ниже). Пример содержит описание схем реляционных отношений, разбитых на системную (выделение курсивом) и предметную части.

PS-указатель пула памяти petry(SC)

MetaN SchId AtrId isKey DomId TypId Comnt

1 SC MetaN 1 MetDm int метауров.

1 SC SсhId 1 SсhDm iden имя схемы

1 SC AtrId 1 AtrDm iden имя атр.

1 SC isKey 0 KeyDm bool ключ?

1 SC DomId 0 DomDm iden имя дом.

1 SC TypId 0 TypDm iden имя типа

1 SC Comnt 0 ComDm string коментар.

1 EC Pool 0 PntDm pntr укз.пула

1 EC ExmId 1 ExmDm iden имя экз.

1 EC SсhId 1 SсhDm iden имя схемы

1 EC MetaN 1 MetDm int метауров.

1 LC isLaw 0 LawDm rwed права

1 LC UsrId 1 UsrDm iden пользов.

1 LC ExmId 1 ExmDm iden экз.схемы

1 LC MetaN 1 MetDm int метауров.

1 LC SсhId 1 SсhDm iden имя схемы

1 UC Parol 0 PrlDm iden пароль

1 UC UsrId 1 UsrDm iden пользов.

0 S SN 1 SNDm iden м-сост.

0 S SM 0 SMDm unsigned тек.рес.

0 T TN 1 TNDm iden м-переход

0 T TD 0 TDDm timedelay задержка

0 ST SN 1 SNDm iden св.сост.

0 ST TN 1 TNDm iden св.перех.

0 ST TI 0 TIDm unsigned зах.рес.

0 TS TN 1 TNDm iden св.перех.

0 TS SN 1 SNDm iden св.сост.

0 TS TO 0 TODm unsigned сброс

0 SP SN 1 SNDm iden вн.возд.

0 SP TM 1 TMDm time м.возд.

0 SP NM 0 NMDm int к-во рес.

0 EC TN 1 TNDm iden акт.пер.

0 EC TK 1 TKDm time кон.акт.

0 TP TN 1 TNDm iden проц.пер.

0 TP TK 1 TKDm time ок.проц.

Схема каталога экземпляров EC имеет три ключевых атрибута – имя экземпляра, имя его схемы и номер метауровня. Их указание однозначно определяет указатель пула памяти (место фактического хранения значения экземпляра реляционного отношения). Каталог разбивается на системную (выделение курсивом) и предметную части. Системная часть всегда содержит указание пулов SC, EC, LC и UC в указанном порядке. Содержание предметной части определяется прикладной предметной областью. Схема EC самоописывается в каталоге в смысле значения указателя на свой пул и содержит атрибуты:

  1. Pool – указатели области памяти, отведенной экземпляру реляционного отношения;

  2. ExmId – идентификаторы экземпляров реляционных отношений (ключевой атрибут);

  3. SchId – идентификаторы схем реляционных отношений (ключевой атрибут).

PE-указатель пула памяти petry(EC)

Pool ExmId SchId MetaN

PS petry SC 1

PE petry EC 1

PL petry LC 1

PU petry UC 1

PtS test S 0

PtT test T 0

PtTS test TS 0

PtST test ST 0

PtSP test SP 0

PtEC test EC 0

PtTP test TP 0

В схеме каталога пользователей UC два атрибута:

  1. Parol – пароль пользователя БД;

  2. UserId – идентификатор пользователя БД (ключевой атрибут).

Даже в случае отсутствия внешних пользователей, в каталоге UC всегда будет хотя бы один пользователь (обладающий особыми правами) - администратор БД отвечающий за состояние метаданных.

PU-указатель пула памяти petry(UC)

Parol UsrId

SPAR SADM

UPAR1 USER1

UPAR2 USER2

Схема каталога прав пользователей LC содержит четыре атрибута:

  1. isLaw – маска прав пользователя по отношению к экземпляру отношения;

  2. UserId – идентификаторы пользователей экземпляров отношений (ключевой атрибут);

  3. ExmId – идентификатор экземпляра реляционного отношения(ключевой атрибут);

  4. SchId - идентификатор схемы экземпляра отношения (ключевой атрибут).

PL-указатель пула памяти petry(LC)

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