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

У нас есть архитектура для наших клиентов ERP, где клиент может иметь несколько баз данных, каждая из которых работает в разных местах. У клиента есть база данных головного офиса, где данные из этих разных баз данных накапливаются на постоянной основе. В настоящее время у нас есть файловый подход, где мы создаем файлы для всех изменений базы данных в определенном формате, а затем загружаем файлы в головной офис на постоянной основе. В головном офисе постоянно работает программа. Как только файл загружается на HO FTP, и главный офис exe ловит его. Он загружает его и обновляет базу данных головного офиса на основе некоторого идентификатора местоположения, откуда получены данные. Этот подход отлично работал последние 10-12 лет, но теперь мы начали сталкиваться с проблемами. Поскольку количество мест увеличилось более чем на 100 для каждого клиента, поток данных составляет более 4-5 лаков в день.

Проблема связана с исполняемым файлом Headoffice и обновлением базы данных, так как количество файлов и объем данных, которые необходимо обновить/вставить, слишком велики. Я искал правильное и масштабируемое решение для этой функциональной проблемы. Может помочь репликация или какой-то другой подход.

Помощь и предложения приветствуются.


person Sunil Sharma    schedule 19.04.2012    source источник


Ответы (1)


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

person Eric Long    schedule 24.04.2012