Mango Office (ООО «Манго Телеком»), российский провайдер облачных бизнес-приложений с интегрированной телефонией, объявила о завершении масштабного трехлетнего проекта по переносу базы данных на платформу PostgreSQL. База данных обеспечивает обслуживание 36 000 клиентов Mango Office, ее объем превышает 1 млрд записей. В результате перехода на свободное ПО общая экономия Mango Office в ближайшие четыре года составит порядка 5 млн долларов.
Среди целей проекта: снижение стоимости владения ПО и затрат при масштабировании бизнеса Mango Office, полный контроль за развитием IT-инфраструктуры, сокращение сроков решения технических проблем без привязки ко времени отклика технической поддержки производителя ПО. Кроме того, в результате достигнуто снижение финансовых рисков, уменьшение зависимости расходов от курса рубля и ценовой политики вендоров.
С июня 2009 года Mango Office использовал платформу одного из ведущих зарубежных вендоров для управления данными о звонках (CDR), клиентах, используемых продуктах и их версиях, а также для работы биллинга. База данных — один из ключевых компонентов облачной платформы Mango Office, работающий в режиме высокой вычислительной нагрузки. В пиковые часы она составляет порядка 6 000 транзакций в секунду на запись и 24 000 транзакций в секунду на чтение. Кроме высокой нагрузки, база данных Mango Office характеризуется сложной бизнес-логикой в режиме реального времени — при смене платформы требовалось перенести 930 хранимых процедур и 45 000 строк кода.
Проект по переносу данных стартовал в 2012 году, его реализация заняла почти три года. Ресурсоемкая задача затрагивала работу практически всех подразделений компании. Чтобы минимизировать риски простоя, клиентскую базу разделили на несколько частей, в том числе по территориальному признаку, и перенос осуществляли постепенно, группами, внимательно отслеживая производительность системы.
«Мы начали проект в далеком 2012 году, еще задолго до возникновения сложностей в работе с зарубежными вендорами, — говорит IT-директор Mango Office Дмитрий Метлин. — Мы проанализировали возможные риски, финансовые выгоды и инженерный потенциал компании и приняли решение перейти на PostgreSQL. В тот момент мы понимали, что будем активно наращивать клиентскую базу, планировали запуск новых облачных продуктов. Подключение новых серверов значило бы для компании существенное увеличение затрат на инфраструктуру, в том числе на оплату программных лицензий и поддержки со стороны вендора».
Длительное время работа осуществлялась на двух платформах одновременно. Во время реализации проекта компания столкнулась с рядом сложностей. Например, результаты синтетического тестирования производительности оказались отличными от показателей, полученных во время реальной работы. Поэтому для эксплуатации потребовалось внести изменения в СПО PostgreSQL и написать надстройки для адаптации прикладного ПО Mango Office к особенностям реализации этой СУБД.
Почти полностью проект по переносу данных на открытое ПО был завершен в 2014 году. Недавно Mango Office перевел на PostgreSQL последнюю небольшую группу клиентов и окончательно завершил проект. Суммарное время простоя сервисов за все время работ составило, как и было запланировано, 15 часов в ночное время суток.
«СУБД PostgreSQL позволяет нам снизить издержки. В то же время она продемонстрировала в тестах отличную надежность и производительность, что полностью соответствовало задачам разрабатываемого проекта, — комментирует результаты Дмитрий Метлин. — Конечно, пока рано говорить о „революционном“ переходе всех компаний к использованию свободного ПО. Но наш опыт показал, что при грамотном инженерном подходе и наличии экспертизы в компании риски использования СПО нивелируются, и PostgreSQL можно применять даже в высоконагруженных корпоративных IT-системах реального времени. Мы можем позволить себе не экономить на производительности и инфраструктуре. Для клиентов Mango Office реализация проекта означает повышение доступности облачных сервисов. Проект можно назвать полностью состоявшимся: система стабилизирована и готова к увеличению количества пользователей».
За 2014 год количество клиентов Mango Office выросло на 20%, объем трафика — на 61%. Компания запланировала открытие семи новых филиалов и выход на европейский рынок в 2015 году. Динамичное развитие и программа повышения отказоустойчивости требуют серьезного расширения IT-инфраструктуры. Сегодня компания использует четыре сервера баз данных, обеспечивающих репликацию и распределение нагрузки с учетом характера запросов (реальное время или нет). Серверы установлены в географически распределенных ЦОД уровня Tier 3. До конца 2015 года планируется увеличение количества серверов баз данных в два раза.