Особенности организации многоуровневой распределенной информационной базе

Механизм распределенной информационной базы платформы 1С:Предприятие 8 позволяет организовать многоуровневую структуру распределенной информационной базы. Организация подобного рода распределенных информационных баз может быть выполнена различными способами. В данной статье мы опишем эти способы, а также некоторые особенности, которые могут возникнуть во время реализации.

Общие положения

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

Корневым узлом распределенной информационной базы называется информационная база с неустановленным значением свойства ГлавныйУзел. Конфигурация корневого узла доступна для редактирования, в остальных узлах распределенной информационной базы (информационных базах с установленным значением свойства ГлавныйУзел) редактирование конфигурации запрещено. Таким образом, корневой узел является вершиной иерархии узлов распределенной информационной базы. Изменения конфигурации распространяются из корневого узла в остальные узлы посредством сообщений обмена.

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

Многоуровневая распределенная информационная база , основанная на одном плане обмена

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

Обмен данными в такой распределенной информационной базы производится обычным образом.

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

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

Роль узла Код узла Описание
Центральный офис Центр Корневой узел распределенной информационной базы
Региональный офис Офис Узел, непосредственно подчиненный корневому узлу (Центр)
Территориальный офис Территория Узел, непосредственно подчиненный узлу Офис

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

Центральный офис Офисы
Центр ЭтотУзел данного плана обмена
Офис Узел, соответствующий региональному офису
Региональный офис Офисы
Офис ЭтотУзел данного плана обмена
Центр Узел, соответствующий центральному офису
Территория Узел, соответствующий территориальному офису
Территориальный офис Офисы
Территория ЭтотУзел данного плана обмена
Офис Узел, соответствующий региональному офису, которому подчинен данный территориальный офис

- обозначает ЭтотУзел плана обмена
- обозначает узел плана обмена, установленный в качестве Главного узла в информационной базе

Многоуровневая распределенная информационная база , основанная на нескольких планах обмена

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

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

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

Выбор варианта обмена может быть выполнен между любыми двумя узлами распределенной информационной базы. Изменение схемы обмена между узлами может быть выполнено в любой момент.

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

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

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

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

Роль узла Код узла Описание
Центральный офис Центр Корневой узел распределенной информационной базы
Региональный офис Офис Узел, непосредственно подчиненный корневому узлу (Центр)
Региональный магазин Магазин Узел, непосредственно подчиненный узлу Офис

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

Центральный офис Офисы
Центр ЭтотУзел данного плана обмена
Офис Узел, соответствующий региональному офису
Магазины
Узлы неопределены
Региональный офис Офисы
Офис ЭтотУзел данного плана обмена
Центр Узел, соответствующий центральному офису
Магазины
Офис ЭтотУзел данного плана обмена
Магазин Узел, соответствующий подчиненному магазину
Региональный магазин Офисы
Узлы неопределены
Магазины
Магазин ЭтотУзел данного плана обмена
Офис Узел, соответствующий региональному офису, которому подчинен данный магазин

- обозначает ЭтотУзел плана обмена
- обозначает узел плана обмена, установленный в качестве Главного узла в информационной базе

Таким образом, видно, что на уровне иерархии Центр-Офис используется план обмена Офисы, а на уровне иерархии Офис-Магазин - план обмена Магазины.

План обмена Магазины может не иметь установленного признака "Распределенная информационная база", обмен данными в таком случае также возможен. Однако этот вариант обмена уже не будет осуществляться в рамках распределенной информационной базы. Он может быть использован для организации обмена распределенной информационной базы и информационными базами, построенными на основе других конфигураций (в том числе и распределенными информационными базами), а также информационными системами, не основанными на базе платформы 1С:Предприятие 8. Главной особенностью такой схемы обмена является необходимость отслеживания согласованности структур данных, участвующих в обмене.