Яндекс.Почта успешно мигрировала с Oracle на PostgreSQL
По информации из доклада Владимира Бородина на конференции Pgcon, компания Яндекс полностью завершила перевод сервиса Яндекс. Почта с СУБД Oracle на PostgreSQL. Решение по уходу с CУБД Oracle было принято в 2012 году. Затем два года проводились эксперименты и летом 2014 года был подготовлен прототип рабочей системы для Яндекс. Почта на основе PostgreSQL, после чего потребовалось около двух лет на его доработку и внедрение. В сентябре 2015 была проведена экспериментальная миграция неактивных пользоватлей сервиса, затем в январе 2016 стартовал процесс перевода активных пользователей. Полностью переход Яндекс. Почта на PostgreSQL был завершен в июле.
Система обеспечивает хранение около 1 Пб данных (более 100 миллиардов записей) и обрабатывает 250 тысяч запросов в секунду. Среди причин, побудивших к уходу от Oracle отмечается неотзывчивая поддержка, неудобное развертывание, закрытый код, только синхронные клиентские интерфейсы, большой объем ручных операций и большие затраты на сопровождение. Из задействованных после миграции специфичных возможностей PostgreSQL отмечается версионирование даных, массивы и составные типы. Замена хранимых процедур Oracle PL/SQL на PL/pgSQL позволила сократить их размер и расширить возможности по тестированию. Отсутствие блокировки кэша библиотек позволило упростить развертывание изменений.