Технология DBREPLICATION — Репликация информационных баз

Технология DBREPLICATION — Репликация Информационных

23.03.2015 компания SOFTPOINT провела семинар, посвященный антикризисным ИТ-решениям. Одно из представленных решений — DBReplication — уникальная технология репликации баз данных. Задачи, которые решает технология, прежде всего актуальны для организаций, имеющих распределенную структуру: сеть подразделений, магазинов, складов, производственных участков и т.п.

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

В отсутствие быстрых и надёжных обменов распределённая информационная система распадается на слабосвязанные фрагменты. Это неизбежно становится узким местом, препятствующим развитию и повышению эффективности бизнеса.
Технология DBReplication в корне меняет ситуацию. С ней обмен между базами осуществляется практически в реальном времени в режиме 24х7. Любые изменения, внесенные в одной базе, отображаются в других базах с минимальной задержкой (от 5-10 секунд). И распределенная система превращается в единое информационное пространство!

Внедрение DBReplication позволяет решить ряд актуальных бизнес-задач:

  • Оптимизировать и централизовать управление компанией, упорядочить документооборот. Простейший пример: заявки на расходование средств, создаваемые в филиалах, теперь могут проходить процедуру утверждения в центральном офисе с минимальной задержкой.
  • Повысить эффективность оперативного управления. С DBReplication данные изо всех узлов консолидируются в центральной базе с минимальной задержкой, поэтому управленческий аппарат имеет в своём распоряжении самую актуальную информацию для анализа оперативной ситуации и принятия решений.
  • Повысить лояльность клиентов за счет повышения качества оказываемых услуг и расширения линейки услуг. Простейший пример: клиент может подать заявку на предоставление услуги (либо оформить покупку) в любом офисе или на веб-портале, информация об этой операции немедленно поступает в нужный узел информационной системы.
  • Повысить отдачу за счет эффективности взаимодействия подразделений. Простейший пример из ритейла: все магазины сети в режиме реального времени «знают» о состоянии остатков друг друга, и клиент, находясь в одном магазине, может оформить покупку с учетом наличия товаров в других магазинах или складах.
  • Сократить прямые и косвенных издержки, связанные со сбоями в системе обмена и простоями из-за них.
  • Обеспечить свободную масштабируемость компании: DBReplication позволяет подключать к системе обмена новые базы без потери скорости передачи данных.
  • Снизить общую стоимость владения системой за счет уменьшения трудозатрат на сопровождение. Простейший пример: за счет стабильной автоматической работы DBReplication и централизованного управления всеми процессами обмена отпадает необходимость держать в каждом подразделении отдельного специалиста, который раньше занимался обслуживанием старой системы обмена.

Вот некоторые задачи с точки зрения ИТ, которые позволяет решить DBReplication:

  • Повысить отказо- и катастрофоустойчивость: можно на удалённых серверах создавать дополнительные базы данных и подключать их системе обмена, эти базы будут играть роль резервных копий. Все изменения из основной базы поступают в базу-копию с высокой скоростью.
  • Решить проблему блокировок пользователей при выполнении обменов. Технология DBReplication создаёт ничтожное количество блокировок, практически незаметное для пользователей по сравнению, например, с блокировками типового обмена 1С.
  • Повысить отдачу от аппаратного обеспечения. DBReplication по сравнению с другими системами создаёт минимальную дополнительную нагрузку во время выполнения обменов, за счет этого высвобождается часть аппаратных ресурсов.
  • Получить возможность для создания высокоэффективного веб-портала или веб-магазина, показывающего актуальную на текущий момент информацию. Пример: веб-магазин, имеет подключение к центральной базе, которая консолидирует информацию изо всех узлов с минимальной задержкой, за счет этого веб-магазин показывает реальные текущие остатки по товарам всех магазинов или складов, а не слепок информации, сделанный утром текущего дня и уже не соответствующий действительности, как это чаще всего бывает.

Технология DBREPLICATION успешно внедрена в ОАО «ИНТЕР РАО», «Курьер Сервис», «Минимакс», «ОМЕГА-Автопоставка», ООО «Башкирская генерирующая компания», ООО «Автотрейд» и в ряде других компаний.

Технические особенности решения

DBREPLICATION – это транзакционная репликация с обновляющими подписчиками. Это значит, что во всех базах, участвующих в обмене, возможна работа не только на чтение, но и на изменение данных.
Ядро DBREPLICATION реализовано на основе стандартных механизмов SQL (триггеры, процедуры) и OLEDB. При этом есть несколько вариантов реализации, адаптированных специально под особенности популярных платформ 1С:Предприятие 8.х и 7.7. Также DBREPLICATION совместима и с другими ИТ-системами на основе SQL.

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

Возможности технологии DBREPLICATION позволяют передавать до 2500 транзакций в минуту с сохранением максимальной скорости (в оптимальных условиях это от 5-10 секунд).

Возможна работа на слабых каналах связи. Имеются примеры внедрения на каналах связи со скоростью 128-256 Kbps с временными ухудшениями до 56 Kbps и падением Ping до 1,5 сек.

Важно то, что технология DBREPLICATION имеет в своём составе специальные графические интерфейсы, позволяющие контролировать и настраивать все процессы централизованно из «одного окна». Также имеется система нотификации, оповещающая по e-mail о тех или иных событиях.

Комментарий от руководителя отдела разработки компании SOFTPOINT Алексея Чивтаева: «Была посчитана статистика на примере внедрения DBREPLICATION в компании «Минимакс». Взяли основные базы Самары и Челябинска, посчитали их задержку синхронизации с центральной базой в Санкт-Петербурге за 2-3 типовых дня в рабочее время. Среднее время доставки транзакции из филиала в Петербург, или из Петербурга в филиал составило всего 20 секунд. Хочу отметить, что технология DBREPLICATION использует потоковое сжатие передаваемых данных. Интересна статистика по коэффициенту сжатия. Анализ по нашим клиентам показал, что примерно 5% транзакций составляют около 80% несжатого объёма информации. Т.е. львиную долю объёма обеспечивает сравнительно малое количество больших транзакций. Коэффициент сжатия таких транзакций находится в диапазоне от 30 до 70, в среднем примерно 50. Т.е. 80% информации, перед попаданием в каналы связи сжимается примерно в 50 раз».

Подробнее узнать про технологию DBRepl можно узнать из видео-выступления начальника отдела разработки компании SOFTPOINT Алексея Чивтаева