Переход с Oracle на PostgreSQL

Разработка ПО
Вопрос перехода с Oracle на PostgreSQL давно является достаточно актуальным. В различных статьях в той или иной степени затронуты проблемы миграции. В нашей компании вышли на этот путь еще в 2018 году. Сейчас можем уверенно констатировать, что мы имеем достаточно серьезный опыт в этом вопросе.


Одной из задач, решаемых в процессе миграции, является обеспечение плавного перехода с Oracle на PostgreSQL. В больших системах, как правило, невозможно сделать так, чтобы “с понедельника все работает на PostgreSQL”. Возникает необходимость параллельной работы Oracle и PostgreSQL. Соответственно, требуется обеспечить оперативный двусторонний обмен данными между Oracle и PostgreSQL.
На рынке не так много решений, позволяющих выполнять непрерывную репликацию между разными СУБД. Из того, что сразу приходит на ум   - Oracle GoldenGate и SymmetricDS. В текущей ситуации с Oracle GoldenGate есть масса объективных трудностей. Если говорить о SymmetricDS, то из нашего опыта работы — это не самый простой во внедрении и надежный в эксплуатации продукт. А в связи с тем, что речь все-таки идет о переходе, то естественно, возникает желание использовать легкий и гибкий в настройках инструмент, не требующий длительного изучения.
Еще в 1997 году специалистами нашей компании был разработан продукт DataX – система репликации для СУБД Oracle Standart. Система долгие годы эксплуатируется нашими заказчиками. В частности, службы занятости Санкт-Петербурга и Крыма каждая используют распределенные СУБД, состоящие из более чем 30 серверов Oracle. В рамках проекта перехода на PostgreSQL нашими специалистами был разработана технология DataX Oracle-PostgreSQL расширяющая возможности DataX.
Основные характеристики DataX Oracle-PostgreSQL:
·        позволяет осуществлять двунаправленная и однонаправленную репликация;
·        не ограничивает доступ к СУБД, во время репликации обе СУБД доступны для работы;
·        не требует каких-либо дополнительных программных продуктов (все реализовано средствами Oracle Standart и PostgreSQL);
·        не требует длительного обучения администраторов СУБД, проста в освоении;
·        не требует дополнительной настройки при репликации одноименных полей в одноименные таблицы;
·        позволяет настроить соответствие (mapping) таблиц и полей;
·        позволяет осуществлять репликацию из одной таблицы в несколько;
·        позволяет выполнять репликацию на несколько узлов PostgreSQL.
Еще одной важной особенностью нашей системы является возможность доработки под конкретные нужды.
Данная технология с июня 2021 успешно используется при разработке и внедрении новой версии системы для службы занятости Санкт-Петербурга. Необходимо отметить, что параллельно с миграцией на PostgreSQL, осуществляется разработка новых рабочих мест пользователей. Т.е. доступ к данным получают как пользователи старых АРМ на базе Delphi, так и новых на базе Java-Spring и т.п. Использование данной технологии позволяет вводить новые модули постепенно, вплоть до отдельных рабочих мест. Это позволяет существенно снизить “турбулентность” от внедрения нового ПО.
Настройка системы репликации сложной информационной системы требует некоторого опыта. Поэтому, мы позиционируем DataX Oracle-PostgreSQL не как коробочный продукт, а как технологию и в какой-то мере как услугу. Наши специалисты имеют большой практический опыт миграции на PostgeSQL и готовы поделится им с Вами.