Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / Синхронизация данных на серверах / 10 сообщений из 10, страница 1 из 1
22.03.2011, 03:32
    #37176459
=Dimon=
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Синхронизация данных на серверах
Существует головной офис и филиальная сеть из 5 магазинов. Версия Cache' везде одинакова - 2010.2. Каналы связи в магазинах нестабильные. Как можно обмениваться данными между магазинами и головным офисом? Существует ли в Cache' механизмы репликации или синхронизации БД?
...
Рейтинг: 0 / 0
22.03.2011, 05:50
    #37176477
Блок А.Н.
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Синхронизация данных на серверах
Существуют, но они расчитаны на стабильный канал.
Думаю, в вашем случае вам придется писать что-то свое.
...
Рейтинг: 0 / 0
22.03.2011, 06:42
    #37176484
=Dimon=
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Синхронизация данных на серверах
Под нестабильным я подразумеваю возможные обрывы соединений и простои около 2-3 часов в течении дня.
...
Рейтинг: 0 / 0
22.03.2011, 09:14
    #37176577
MX-9
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Синхронизация данных на серверах
У нас похожая конфигурация
Самопальный модуль поддерживает синхронизацию глобалей - некоторых
Центральный сервер - UNICODE , oстальные - 8 bit
Все клиенты - UNICODE (EXCEL) - могут коннектится к любому серверу
Единые общие справочники и классификаторы
Разрыв соединения на сутки - терпимо
=============
...
Рейтинг: 0 / 0
22.03.2011, 10:22
    #37176683
=Dimon=
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Синхронизация данных на серверах
MX-9,

а какой алгоритм работы у вас? какие данные синхронизируете? в какое время? как решаете проблемы с одинаковыми ID и одинаковыми внешними ключами?
...
Рейтинг: 0 / 0
22.03.2011, 10:50
    #37176728
MX-9
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Синхронизация данных на серверах
по некоторым событиям на центральном сервере
включается дозакачка глобалей (с перекрытием на сутки)
узлы глобалей содержат метки времени последнего изменения
удаления отслеживаются специальным способом
скорость по лок сети примерно 10000 записей в сек

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

проблемы с ID и ключами - какие ?
с разных точек гарантировано идут разные ключи
============================
...
Рейтинг: 0 / 0
22.03.2011, 10:53
    #37176732
MX-9
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Синхронизация данных на серверах
...
если центральный сервер временно недоступен
проверка идет по копии классификатора на локальном сервере

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

возможно система не лучшая - будем развивать

===============
...
Рейтинг: 0 / 0
22.03.2011, 12:05
    #37176881
DAiMor
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Синхронизация данных на серверах
я участвовал в разработке, в котором для синхронизации данных между серверами головного и филиальными был написан собственный процесс синхронизации данных, работало все на Cache5.0

собственно для того чтобы не пересекались данные, при создании объектов использовался префикс, собственно 3 цифры перед стандартным ID, срабатывало при сохранении объекта, т.е. был переопределен ID, на свой sysID, таким образом в каждом филиале можно иметь независимый набор данных, который не при каких обстоятельствах не может пересечься. а также видно где был порожден тот или иной объект.
потом, при изменении объекта, в нем проставлялось в свойство о последнем изменении, время в UTC (филиалы по всей стране),
чтобы отслеживать время изменения объекта
и ссылка на измененный объект сохраняется в глобали очереди репликации
откуда процесс репликации получает очередной объект, упаковывает все его свойства и связанные объекты, в строку, сжимает 7zip, и сохраняет stream в глобал в область подключаемую по ECP, нужного филиала, где другой процесс отслеживает появление новых узлов глобалов, распаковывает, разбирает строку, получает объект и сохраняет в новом месте, так же используется контроль по контрольным суммам, в случае если контроль по сумме не проходит, сервер может запросить информацию об этом объекте повторно
в общем как то так
работало это довольно долго, и думаю проработает еще много, тем более насколько мне известно они уже осваивают новые версии Cache.
соответственно обрывы связи бывают довольно длительными, и по несколько дней, которые вполне сносно проходят, филиал работает на свой базе и когда связь восстановится то все что надо сразу попадет на головной сервер
так же существует распределение данных между филиалами таким образом, чтобы не отправлять данных которые им точно не нужны, в объектах обычно есть по которым назначаются получатели этого объекта а в описании каждого филиала на головном сервере описано какому филиалу что слать, некоторые объекты отправляются сразу всем филиалам
связь осуществляется только между головным сервером и серверами филиалов по типу звезды, но теоретически лучи такой звезды тоже можно соеденить но в нашей задаче такого не требовалось
...
Рейтинг: 0 / 0
25.03.2011, 10:32
    #37182144
=Dimon=
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Синхронизация данных на серверах
Обратился в суппорт, поделились информацией.
объектная синхронизация
...
Рейтинг: 0 / 0
03.04.2011, 22:50
    #37196991
Rus000
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Синхронизация данных на серверах
=Dimon=,

это работает но в версии 2008 было сыро - убили 3 месяца пока как-то заработало.
Возможно в последних релизах что-то изменилось к лучшему
...
Рейтинг: 0 / 0
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / Синхронизация данных на серверах / 10 сообщений из 10, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]