Postgres Professional представила ProGate: миграция из Oracle со скоростью 41 ТБ/сутки
Для крупных компаний миграция данных остаётся барьером при переходе с зарубежных СУБД на отечественные. Основные трудности: объём данных, длительный простой при переносе и сложность организации корректной синхронизации изменений. При масштабах в десятки терабайт даже подготовительный этап превращается в отдельный проект с высоким риском сбоев.
Отвечая запросу рынка, Postgres Professional выпустила ProGate — решение, которое объединяет быструю загрузку данных, непрерывную репликацию и автоматическую проверку качества. Продукт уже использован в пилотах и показал, что позволяет переносить крупные корпоративные базы и выстраивать стабильные процессы репликации в рамках модернизации ИТ-ландшафта.
Что такое ProGate?
Это комплексное решение для миграции и репликации данных. Оно состоит из нескольких специализированных утилит, которые покрывают все этапы миграции:
- ProCopy — быстрая первоначальная загрузка данных;
- ProSync — непрерывная синхронизация изменений (Change Data Capture — CDC);
- ProCheck — контроль качества и целостности данных после миграции.
Решение охватывает не только миграцию в Postgres Pro/PostgreSQL, в том числе из legacy-СУБД, но и регулярную репликацию, доставку данных в сторонние аналитические хранилища, включая форматы parquet и будущую интеграцию с OLAP-системами. Давайте подробнее рассмотрим каждую из утилит.
Давайте подробнее рассмотрим каждую из этих утилит.
Этап 1. Первоначальная загрузка данных с помощью ProCopy
ProCopy — это консольная утилита для быстрой первоначальной загрузки данных, например в Postgres Pro. Её задача — максимально быстро перенести большой объём данных в т.ч. на «горячей» базе данных, чтобы минимизировать время простоя или задержку в работе приложений. В последних синтетических тестах удалось достичь производительности в 200–500 МБ/секунду, или до 41 ТБ/сутки по маршруту Oracle Database → Postgres Pro. А для маршрута PostgreSQL → Postgres Pro примерно 1 ГБ/сек.
На текущий момент ProCopy поддерживает загрузку данных из Oracle, Postgres Pro и PostgreSQL, а также выгрузку в Parquet. В дорожной карте — поддержка MS SQL, MySQL, Shardman и других систем, а также интеграция с распределёнными хранилищами.
Как это работает?
ProCopy написан на языке Go, что позволяет максимально эффективно использовать ресурсы сервера, работать параллельно и переносить базы данных любого размера.
Архитектурно ProCopy использует пул параллельных процессов чтения и записи, встроенную шину данных для эффективного обмена информацией между ними и механизм обработки ошибок с возможностью повторной загрузки проблемных записей.
Преимущества
- Высокая скорость передачи данных.
- Гибкость конфигурации (YAML/JSON).
- Возможность возобновления работы с места остановки.
Поддержка сложных типов данных (LOB, XML, JSON и другие).
Этап 2. Синхронизация изменений с помощью ProSync (CDC)
ProSync — инструмент для непрерывного захвата изменений (CDC) из Oracle Database и Postgres-совместимых систем, а затем их применения к Postgres Pro. Это позволяет обеспечить короткий downtime при миграции. Также решение работает как отдельный инструмент репликации.
Как это работает?
Когда в базе данных Oracle происходят любые изменения, например добавление новой записи, изменение существующей или удаление данных, эти действия записываются в специальные журналы изменений (redo-логи) Oracle Database. ProSync постоянно следит за этими журналами и сразу же фиксирует каждое изменение. Затем он берёт эти изменения и повторяет их в базе данных Postgres Pro.
Таким образом, данные в Postgres Pro или PostgreSQL всегда остаются актуальными и полностью совпадают с теми, что есть в Oracle Database. Это позволяет выполнять миграцию с минимальным техническим окном и без потери данных.
Реальный пример
Представьте банк, который не может позволить себе остановить систему даже на час. С помощью ProSync банк может постепенно переносить данные и приложения с Oracle Database на Postgres Pro, не останавливая работу исходной системы. Пользователи продолжат работать в Oracle Database, а все изменения в реальном времени будут синхронизироваться с новой базой данных на Postgres Pro. После полной синхронизации можно переключить приложения на новую систему с минимальным временем простоя.
Преимущества
- Минимальная нагрузка на исходную СУБД.
- Надежная обработка ошибок и мониторинг состояния репликации.
- Масштабируемость механизма CDC для интеграционных процессов и передачи больших объёмов данных в аналитические системы.
Этап 3. Проверка качества данных с помощью ProCheck
ProCheck — инструмент, который позволяет убедиться, что миграция прошла успешно, и данные в Postgres Pro полностью соответствуют данным в Oracle Database.
Сегодня ProCheck поддерживает расширенный набор проверок: сравнение уникальных идентификаторов, сверку количества строк, построчное сравнение и проверку совпадения результатов SQL-запросов.
Как это работает?
ProCheck сравнивает таблицы, строки и столбцы между двумя базами данных. Он выявляет любые расхождения, ошибки преобразования, потери данных и предоставляет подробный отчёт.
Пример использования
После завершения миграции нужно проверить, совпадают ли финансовые балансы в Oracle Database и в новой системе на Postgres Pro. ProCheck автоматически проверит каждую запись и подтвердит, что все данные перенесены корректно.
Использование ProGate наиболее эффективно при миграции крупных баз данных размером от терабайта и выше, необходимости минимального простоя и горячей миграции, строгих требованиях к качеству и консистентности данных, а также при построении регулярной выгрузки данных в аналитические хранилища и OLAP-системы.
Возможные ограничения ProGate
Несмотря на преимущества, важно учитывать возможные ограничения. Изменения схемы во время миграции могут потребовать ручного вмешательства, пользовательские типы данных — индивидуальной настройки или ручной обработки, а таблицы без первичных ключей могут осложнить использование ProSync, которому для корректной работы желательно наличие уникальных ключей.
Релиз ProGate, представленный на CNews Forum, стал важным этапом в формировании полноценной экосистемы инструментов миграции на Postgres Pro. Решение закрывает весь цикл переноса от начальной загрузки до непрерывной синхронизации и контроля консистентности.
Для проектов импортозамещения это означает сокращение сроков миграции, снижение операционных рисков и возможность строить единые конвейеры данных для транзакционных и аналитических систем. ProGate фактически закрыл один из самых сложных технологических узлов рынка — массовую, ускоренную и контролируемую миграцию данных.
Ознакомьтесь с возможностями продукта и сценариями его применения на сайте.
■ Рекламаerid:2W5zFGGPNwJРекламодатель: ООО «ППГ»ИНН/ОГРН: 7729445882/1157746074518Сайт: https://postgrespro.ru/





