Меню

Кейс «Авито»: как прошла миграция баз данных 1С с Microsoft SQL Server на Postgres Pro Enterprise

Российская компания «Авито» — крупнейший игрок рынка электронной коммерции и цифровая платформа для бизнеса. Компании важно поддерживать производительность, скорость и безопасность работы ИТ-инфраструктуры, и при этом не зависеть от решений иностранных вендоров. В статье расскажем о том, как «Авито» совместно с командой «ИнфоСофт» провела миграцию баз данных 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 — флагманская редакция СУБД Postgres Pro для высоконагруженных систем. Включает более 100 основных разработок — BiHA, поддержка пакетов Oracle, приоритизация ресурсов, расширение Proxima, управление жизненным циклом информации (ILM), встроенный механизм сжатия данных (CFS), интеллектуальная система оптимизации запросов, маскирование данных, диагностический модуль 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 заказчик отмечает высокий уровень производительности, более прозрачное секционирование, надежность, отказоустойчивость и безопасность новой СУБД.

«Выбрав решение команды Postgres Professional, мы получили экспертизу и опыт, накопленный в тысячах проектов перевода баз данных 1С на Postgres Pro. Сейчас наша инфраструктура 1С опирается на отказоустойчивую СУБД, которая удовлетворяет высокой нагрузке и большим объемам данных», — говорит Кирилл Скоромыкин, руководитель направления внутренней автоматизации «Авито».    

В процессе миграции были перенесены данные общим объемом 10 ТБ.

▪ Преобладающий тип мигрируемых данных: mvarchar.
▪ Задача сохранения и улучшения уровня производительности СУБД по сравнению с прежними показателями была полностью достигнута.

«Решения Postgres Pro приобрели большую популярность среди российских заказчиков и используются в самых разных отраслях. СУБД Postgres Pro Enterprise разработана специально для крупных компаний с высоконагруженными системами и большими объемами данных. Одно из преимуществ этой редакции — наличие версии для 1С, которая полностью совместима и оптимизирована для работы с платформой. Выбирая эту версию, наши заказчики могут быть полностью уверены в ее высокой надежности и максимальной производительности. При выборе СУБД, помимо технических возможностей и характеристик, для многих заказчиков главным фактором является наличие качественной технической поддержки. Мы, как вендор, оказываем техническую поддержку на экспертном уровне. Сильная команда, в которую входят сертифицированные специалисты Postgres Professional, разработчики ядра PostgreSQL, в режиме 24/7 консультирует заказчиков и партнеров по любым вопросам и находит решение самых сложных задач», — подчеркивает Иван Панченко, заместитель генерального директора и сооснователь Postgres Professional.    

Источник: TAdviser.