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 Алексея Чивтаева