6 Архитектурная модель ГОСТ 34.321-96

6.1 Понятия моделирования ГОСТ 34.321-96

Архитектурная модель выражается в терминах процессоров, которые взаимодействуют как клиент и (или) сервер. Эти термины используются для ссылок на процессоры, которые выполняют функции для конкретного взаимодействия.

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

При взаимодействии клиент - сервер клиент делает запрос на услугу, включая любые значения данных, требуемые для этой услуги. Сервер обеспечивает один из следующих ответов:

  • указание, что запрашиваемая услуга завершена;
  • набор данных, который является результатом запрашиваемой услуги;
  • сообщение, что услуга недоступна;
  • сообщение, что запрашиваемые данные недоступны.

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

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

Процессор может быть клиентом многих серверов в любое время; несколько серверов могут поддерживать нескольких параллельных клиентов.

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

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

[из 6.1 Понятия моделирования ГОСТ 34.321-96]

6.2 Общая модель управления данными ГОСТ 34.321-96

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

Эта модель основывается на характеристиках класса «общая база данных» и класса «общая схема».

Контроллер базы данных обеспечивает предоставление услуг управления данными для определения и доступа к классу баз данных.

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

Типичные услуги, обеспечиваемые контроллером базы данных, следующие:

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

Запросы на эти услуги выражаются или операторами на языке баз данных для средства моделирования данных, поддерживаемого контроллером базы данных, или вызовами процедур, которые обеспечивают те же самые возможности.

Пользователь - это лицо или программа, которые заказывают услуги для управления данными.

Процессор пользователя - это процессор, который обеспечивает услуги управления данными для своих клиентов.

При обеспечении услугами процессор пользователя является клиентом услуг одного или более контроллеров базы данных; использование услуг любого одного контроллера базы данных требует, чтобы сеанс управления данными устанавливался между процессором пользователя и контроллером базы данных [из 6.2 Общая модель управления данными ГОСТ 34.321-96]

6.3 Специализация модели в различных средах ГОСТ 34.321-96

Общая модель может быть применена к различным видам информационных систем, описанных в разделе 4. На абстрактном уровне это применение может быть представлено замещением термина «общий» соответствующей меткой. Например, модель может быть применена к среде распределенной базы данных в терминах контроллера распределенной базы данных, распределенной базы данных и распределенной схемы. Подобным образом может быть идентифицирован контроллер словаря базы данных, а без любой метки контроллер базы данных применяется к среде базы данных компьютерной системы [из 6.3 Специализация модели в различных средах ГОСТ 34.321-96]

6.4 Среда базы данных ГОСТ 34.321-96

Контроллер базы данных должен поддерживать типичные услуги для среды базы данных.

Процессоры пользователя используют услуги управления данными в среде базы данных.

Услуги контроллера базы данных должны поддерживаться для многих пользовательских процессоров-клиентов параллельно, однако клиент должен иметь возможность выполнять транзакции базы данных без влияния со стороны других клиентов.

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

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

Приведенные выше описания не рассматривают связь между средой базы данных и любой конкретной информационной системой. Разрешается процессору пользователя находиться в отличной от среды базы данных компьютерной системе. В этом случае требуются протоколы связи для соединения обработки. Эти протоколы могут быть или пассивными носителями взаимосвязи или обеспечивать специальные услуги, которые поддерживают удаленное использование услуг управления данными [из 6.4 Среда базы данных ГОСТ 34.321-96]

6.5 Управление распределенными данными ГОСТ 34.321-96

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

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

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

В эталонной модели предполагается, что для одной распределенной базы данных имеется только одна среда базы данных для распределенных данных в каждой компьютерной системе.

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

- Управление распределенными данными

Рисунок 12 - Управление распределенными данными

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

Контроллер распределения - это процессор, который обеспечивает услуги управления данными для определения и доступа к распределенным базам данных вместе с услугами, относящимися к связанным с ними схемам и распределенным данным.

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

Для распределенной базы данных допускается, что каждая компьютерная система имеет только один контроллер распределения.

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

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

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

Когда среды базы данных для ссылочных данных определены, тогда контроллер распределения может вызывать услуги любых контроллеров базы данных в той же самой компьютерной системе или связываться с удаленными контроллерами распределения, чтобы выполнить часть или всю запрашиваемую услугу [из 6.5 Управление распределенными данными ГОСТ 34.321-96]

6.6 Модель экспорта-импорта ГОСТ 34.321-96

Модель экспорта-импорта является специализированной общей моделью.

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

Использование услуги импорта требует имени файла, в который данные были экспортированы.

Составляющими архитектурной модели экспорта-импорта являются пользователь, процессор пользователя, контроллер базы данных, процессор экспорта-импорта, схема базы данных, файл экспорта-импорта. Связь составляющих архитектурной модели экспорта-импорта представлена на рисунке 13.

- Модель экспорта-импорта

Рисунок 13 - Модель экспорта-импорта

Архитектурная модель экспорта и импорта основывается на декомпозиции, которая разделяет контроллеры базы данных, обеспечивающие услуги для любых типов среды базы данных из процессора экспорта-импорта, который обеспечивает требуемые услуги. Использование услуг экспорта и импорта может быть параллельным с другими услугами контроллера распределенной базы данных [из 6.6 Модель экспорта-импорта ГОСТ 34.321-96]

6.7 Модель управления доступом ГОСТ 34.321-96

Модель управления доступом - это специализированная общая модель. Ее назначение - показать услуги контроллера базы для управления доступом к данным в среде базы данных и услуги для определения данных управления доступом, необходимых для этого управления доступом.

Управление доступом требует, чтобы каждый запрос на услугу контроллера базы данных был связан явно или неявно с аутентичным идентификатором. Этот идентификатор может быть неявно связан с запросом услуги с помощью декларирования при запуске или модификации в течение сеанса управления данными для клиента. Разрешение на конкретный запрос на услугу зависит от того, имел ли связанный с ним идентификатор заранее объявленные привилегии для процессов и вызванных данных.

Если соответствующие привилегии для запроса на услугу не существуют, то ответ на запрос указывает нарушение управления доступом, и это нарушение может быть записано для общего управления доступом.

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

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

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

- Управление доступом в распределенной среде

Рисунок 14 - Управление доступом в распределенной среде

Архитектурная модель управления доступом основывается на декомпозиции, которая разделяет контроллеры базы данных, предоставляющие услуги для среды базы данных без управления доступом, и процессоры, связанные с управлением доступом.

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

Процессор управления доступом принимает любой запрос от идентифицированного пользователя на услугу. Это или запрос от процессора пользователя на общую услугу, или запрос от определителя управления доступом на услугу, связанную с определением данных управления доступом. Процессор управления доступом сначала использует данные управления доступом для определения, разрешен ли запрос. Тогда запрос или отклоняется, если пользователь не имеет соответствующих привилегий, или процессор управления доступом вызывает услуги контроллера базы данных, чтобы выполнить запрос. Это может заканчиваться доступом к базе данных или данным управления доступом [из 6.7 Модель управления доступом ГОСТ 34.321-96]