Кейс «Авито»: как прошла миграция баз данных 1С с Microsoft SQL Server на Postgres Pro Enterprise
Российская компания «Авито» — крупнейший игрок рынка электронной коммерции и цифровая платформа для бизнеса. На платформе «Авито» ежедневно модерируется более 20 млн объявлений и совершается по 10 сделок в секунду. Компании важно поддерживать производительность, скорость и безопасность работы ИТ-инфраструктуры, и при этом не зависеть от решений иностранных вендоров. В статье расскажем о том, как «Авито» совместно с командой «ИнфоСофт» провела миграцию баз данных 1C с Microsoft SQL Server на отечественную СУБД Postgres Pro Enterprise для высоконагруженных систем.
Заказчик
«Авито» — одна из ведущих ИТ-компаний, российский онлайн-сервис, который уже более 15 лет играет ключевую роль на рынке частных и коммерческих объявлений. С его помощью миллионы людей каждый день находят товары, автомобили, недвижимость, работу и услуги, делая свою жизнь проще, комфортнее и интереснее.
Компания использует современные технологии, чтобы упростить и оптимизировать процесс покупки и продажи товаров и услуг, превращая каждую покупку в возможность для положительных изменений. Эта философия помогает людям не только в решении повседневных задач, но и в достижении важных жизненных целей.
Партнёр
«ИнфоСофт» — официальный партнер Фирмы «1С», входящий в ТОП-10 общероссийского рейтинга. На протяжении 26 лет компания автоматизирует бизнес с помощью программ «1С», обладая огромным опытом внедрения программных продуктов как в небольших фирмах, так и в крупных компаниях. В портфолио компании автоматизация более 2 000 рабочих мест на крупных предприятиях, среди которых внедрение на 736 рабочих мест в НАЗ им. В. П. Чкалова, вошедшее в ТОП-20 самых масштабных внедрений «1С» в мире в 2013 г. и находящееся сейчас в ТОП-200.
Проект и выбор решения
Платформа «Авито» насчитывает более 220 млн объявлений с 62 млн пользователей ежемесячно. На платформе в среднем совершается 10 сделок в секунду. Работа платформы построена на базе комплексной ИТ-инфраструктуры, которая включает 2000+ сервисов, 4 дата-центра и команду из более чем 10 000 человек.
Долгие годы частью ИТ-инфраструктуры «Авито» была СУБД Microsoft SQL, которая поддерживала работу баз данных 1С. С изменениями на рынке вендоров программного обеспечения перед заказчиком встала задача найти надежную отечественную альтернативу СУБД, которая обеспечит работу баз данных и производительность высоконагруженных систем.
Главными критериями для выбора новой СУБД стали:
- Решение от российского вендора.
- Поддержка высоконагруженных систем и больших объёмов данных.
- Безопасность.
- Наличие профессиональной технической поддержки от вендора.
«С учетом объёма ожидаемой нагрузки, ванильные редакции PostgreSQL не подходили из-за большого количества соединений к базе и больших объёмов самой базы данных. Кроме того, заказчик хотел иметь постоянный доступ к качественной технической поддержке со стороны разработчика СУБД, поэтому Postgres Pro Enterprise стала оптимальным выбором», — рассказывает Антон Дорошкевич, руководитель проектов «ИнфоСофт».
Postgres Pro Enterprise — российская СУБД для высоконагруженных систем крупных предприятий. Включает более 100 ключевых разработок, обеспечивающих максимальную надежность и безопасность, высокую производительность и легкую масштабируемость системы, а также облегченную миграцию с Oracle.
Среди основных решений и функций СУБД: расширение Multimaster, поддержка пакетов Oracle, система управления отказоустойчивым кластером BiHA (Built-In High Availability), администратор без доступа к данным, приоритизация ресурсов, адаптивный оптимизатор запросов AQO 2.0, 64-битные счетчики транзакций, маскирование данных, диагностический модуль pgpro_pwr, графическая платформа PPEM и многое другое.
Еще одним преимуществом в пользу решения от разработчика Postgres Professional стало наличие специализированной версии Postgres Pro Enterprise для 1С, которая не только полностью совместима с платформой «1С:Предприятие», но и имеет набор оптимизаций и улучшений для её работы.
Процесс миграции
Базы данных 1С у заказчика имеют разные размеры и профили нагрузки. Объём самой нагруженной и большой базы данных составляет 7 ТБ. В «Авито» такая база данных обслуживает несколько сотен пользователей, а также большое количество роботизированных фоновых заданий — всё это создаёт транзакционную нагрузку на СУБД в режиме нон-стоп.
С учетом технических особенностей, связанных с объёмом данных и нагрузкой на СУБД, команда «ИнфоСофт» сформировала план действий, который включал следующие технические задачи:
- Сохранить и постараться улучшить производительность системы со стороны СУБД.
- Перенести данные в новую СУБД бесшовно и в полном объёме.
- Уложиться в технологические окна при миграции больших баз данных с минимальным простоем.
На реализацию проекта было заложено 3 месяца, в течение этого срока команда «ИнфоСофт» выполнила нагрузочное тестирование, оптимизацию кода 1С, миграцию данных между СУБД и на заключительном этапе — оптимизацию настроек Postgres Pro для 1С.
«По результатам тестирования было принято решение, что для небольших баз мы будем применять выгрузку/загрузку в/из *.dt, для больших баз — утилиту ibcmd replicate. Большие и небольшие базы выбирались не по объёму, а по тому, успеваем ли мы смигрировать конкретную базу в её техническое окно и какой инструмент для этого необходимо применить», — отмечает Антон Дорошкевич, руководитель проектов «ИнфоСофт».
В проектную команду общей численностью 10 человек, вошли эксперты, администраторы, архитекторы. Благодаря слаженной работе проектной команды «ИнфоСофт» и специалистов на стороне заказчика миграцию данных удалось выполнить в запланированный срок и в полном объеме.
Результаты проекта
В настоящее время СУБД Postgres Pro Enterprise введена в промышленную эксплуатацию, она полностью обеспечивает работу баз данных 1С. По итогам проекта миграции и внедрения Postgres Pro заказчик отмечает высокий уровень производительности, более прозрачное секционирование, надежность, отказоустойчивость и безопасность новой СУБД.
- В процессе миграции были перенесены данные общим объемом 10 ТБ.
- Преобладающий тип мигрируемых данных: mvarchar.
- Задача сохранения и улучшения уровня производительности СУБД по сравнению с прежними показателями была полностью достигнута.
«Выбрав решение команды Postgres Professional, мы получили экспертизу и опыт, накопленный в тысячах проектов перевода баз данных 1С на Postgres Pro. Сейчас наша инфраструктура 1С опирается на отказоустойчивую СУБД, которая удовлетворяет высокой нагрузке и большим объемам данных», — говорит Кирилл Скоромыкин, руководитель направления внутренней автоматизации «Авито».
«Решения Postgres Pro приобрели большую популярность среди российских заказчиков и используются в самых разных отраслях. СУБД Postgres Pro Enterprise разработана специально для крупных компаний с высоконагруженными системами и большими объемами данных. Одно из преимуществ этой редакции — наличие версии для 1С, которая полностью совместима и оптимизирована для работы с платформой. Выбирая эту версию, наши заказчики могут быть полностью уверены в её высокой надежности и максимальной производительности.
Помимо технических возможностей и характеристик, для многих заказчиков главным фактором является наличие качественной технической поддержки. Мы, как вендор, оказываем техническую поддержку на экспертном уровне. Сильная команда, в которую входят сертифицированные специалисты Postgres Professional, разработчики ядра PostgreSQL, в режиме 24/7 консультирует заказчиков и партнеров по любым вопросам и находит решение самых сложных задач», — подчеркивает Иван Панченко, сооснователь и заместитель генерального директора Postgres Professional.
+7 (383) 383-21-04