Хабрахабр

[Перевод] GitLab: С выходом версии 12.1 мы прекращаем поддержку MySQL

Сейчас мы расскажем, почему, начиная с версии 12.1, GitLab перестанет поддерживать MySQL.

Так вот, с выпуском 12. В июле 2017 GitLab предупредил, что прекратит поддержку MySQL. Решение непростое, и мы хотели бы поделиться доводами. 1 период подготовки к этому завершится, и больше мы MySQL поддерживать не будем.

MYSQL не очень подходил для нашего сценария использования

По сравнению с PostgreSQL MySQL имеет ряд ограничений, что приводило к проблемам с PostgreSQL при попытках приспособить MySQL. Есть немало удачных внедрений MySQL, однако в нашем случае он не совсем подходил. Вот небольшой список ограничений:

Он замедлял нас

Поддержка такого кода также приводила к накладным расходам, что в результате привело к замедлению скорости выпусков. Для обхода "больных" мест мы написали специфичный код для MySQL, что по факту вылилось в поддержание еще одной подсистемы баз данных, а по факту — удвоенная сложность при слияниях кодовой базы.

Расходы, надо сказать, значительные, не окупаются малым числом пользователей на MySQL. Отдельно стоит упомянуть нашу систему CI, которая прогоняла тесты дважды, таким образом прекратив поддержку MySQL мы сократим время тестирования и расходы на инфраструктуру.

Мы теряли преимущества обеих серверных частей

Там где хотелось бы использовать особенности производительности и надежности какой-либо из них, приходилось сводить все к наименьшему общему знаменателю. Поддерживая обе серверные части (PostgreSQL и MySQL), мы не могли в полной мере воспользоваться ни одной из них. Пример (не единственный): мы хотели использовать LATERAL JOIN PostgreSQL для оптимизации событий на панели управления, но у нас не получилось потому, что мы использовали MySQL.

Почти все наши клиенты на PostgreSQL

Тренд достаточно устойчивый, к примеру в последнее время на 1200 установок с MySQL было порядка 110000 установок на PostgreSQL. Ориентируясь на данные Usage Ping, мы четко увидели, что подавляющее большинство клиентов уже перешли на PostgreSQL.

1 и новее. Мы уверены, что наши пользователи, которые применяют MySQL, могут достаточно просто сменить базу данных переходя на PostgreSQL при обновлении до gitlab 12.

К слову, сами мы не работаем с MySQL, а это значит, что мы не сталкивались с проблемами ДО наших пользователей.

Нужна помощь с миграцией?

Если вы из числа таких пользователей, то для руководства по переходу с MySQL на PostgreSQL ознакомьтесь, пожалуйста, с документами по миграции.

Теги
Показать больше

Похожие статьи

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Кнопка «Наверх»
Закрыть