Утилиты для слияния баз данных «Галактики»

Утилиты предназначены для слияния путём обмена документами двух или более связанных локальной сетью баз данных системы «Галактика». Схема обмена аналогична приведённой в работе Галактика и WEB-сервисы. Роль Web-сервера и Интернета выполняет локальная сеть, роль Web-сервиса выполняет утилита копирования документов CopyGalaktikaDocs. Утилита выполняет извлечение данных из базы-источника в соответствии с xml-описанием базы и внедряет эти данные в базы-приёмники. Источник и приёмники — базы  системы «Галактика» на платформе Pervasive 2000i.

Управляется утилита CopyGalaktikaDocs через значения параметров, задаваемые  в командной строке, в конфигурационном файле или в настроечной панели.

В зависимости от заданных параметров утилита может изменять ключевые поля записей базы данных (поля NREC) и ссылочные поля записей (поля типа COMP) с целью устранения конфликтов по уникальным значениям в базах, в которых не производилось регулярной синхронизации данных (либо такая синхронизация проводилась эпизодически) с использованием штатных средств системы «Галактика» (утилита Corpo). Дополнительно утилита позволяет вставлять заданные отметки в некоторые поля с целью последующей визуальной оценки источника информации.

Имеется возможность синхронизации каталогов/справочников по заданным полям (при обнаружении в приёмнике нужной записи ссылки в документах настраиваются на эту запись).

При наличии в схеме копируемых документов таблиц с мемо-полями формируются файлы со скриптами для переноса таких таблиц с помощью файлов формата DBF. Скрипты должны быть исполнены с помощью утилит Support или VIP на источнике и приёмниках.

Слияние БД не требует полной остановки работы пользователей системы «Галактика» как на БД-источнике, так и приемнике. Система слияния имеет механизм корректной остановки процесса и последующего его возобновления.

Дополнительная утилита SetOfficeNumber позволяет выполнить изменения ключевых и ссылочных полей «по месту», что позволяет получить эффект изменения "номера офиса" (в терминах утилиты Corpo).

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

Условия тестирования

 Время на перенос одной записи

bullet

Сервер базы–источника: Celeron/333, 256 Mb, IDE HDD

bullet

Сервер базы–приёмника: он же

0,65 сек.

bullet

Сервер базы–источника: Celeron/333, 256 Mb, IDE HDD

bullet

Сервер базы–приёмника: Pentium III/1000, 512 Mb, IDE HDD

bullet

Связь между серверами – ЛВС 100 Мб

0,19 сек.

Для работы утилит требуется:

bullet

операционная система MS Windows 2000 Server или лучше

bullet

пакет MS .NET FrameWork SDK версии 1.0 или выше.

bullet

система доступа к данным MDAC версии 2.6SP2 или выше.

bullet

при слиянии больших объёмов данных рекомендуется для повышения быстродействия иметь выделенный сервер для базы-приёмника

Для разработки утилит использована объектная технология, инструментарий разработки - язык C# и среда программирования MS Visual Studio.NET.

 

 Дьяков К.М.

Email: kostya@galaktika.ru