Описание услуги
Я инженер баз данных, и большую часть времени я привожу MySQL и PostgreSQL в порядок под реальной боевой нагрузкой. За годы работы мне досталось немало систем, где один медленный запрос ставил на колени всё приложение, и я усвоил: решение почти никогда не в том, чтобы докупить железа. Я начинаю с измерений — читаю планы выполнения, поднимаю лог медленных запросов, смотрю на попадания в буферный пул и кэш, и только потом решаю, что действительно нужно менять. Такая дисциплина не даёт мне гадать, а клиенту — платить за догадки.
Большая часть моей работы укладывается в несколько направлений. Я переписываю тяжёлые запросы так, чтобы они трогали меньше строк, проектирую индексы под то, как приложение реально обращается к данным, а не вешаю индекс на каждый столбец, и выстраиваю схемы репликации, которые дают масштабирование чтения и горячий резерв без сюрпризов при переключении. К резервным копиям я отношусь всерьёз: для меня это значит проверять восстановление, а не просто ставить дамп в расписание и надеяться. Когда схему нужно менять на живой таблице с миллионами строк, я планирую миграцию так, чтобы она шла онлайн, понятными шагами и с готовым планом отката, чтобы во время деплоя никто не задерживал дыхание.
Клиенты ценят, что я объясняю компромиссы человеческим языком и оставляю базу в состоянии, которое их команда сможет поддерживать сама. Я документирую, что и зачем изменил, и охотно работаю в паре с вашими разработчиками, чтобы знания закрепились.
— Тюнинг и конфигурация MySQL и PostgreSQL
— Оптимизация запросов и анализ планов выполнения
— Проектирование и ревизия индексов, удаление лишних
— Настройка репликации: потоковая, логическая, реплики чтения, failover
— Стратегия бэкапов и проверенное восстановление на точку во времени
— Безопасные онлайн-миграции схемы с планом отката
— Диагностика медленных запросов, дедлоков и блокировок
— Планирование ёмкости, мониторинг и настройка алертов
Большая часть моей работы укладывается в несколько направлений. Я переписываю тяжёлые запросы так, чтобы они трогали меньше строк, проектирую индексы под то, как приложение реально обращается к данным, а не вешаю индекс на каждый столбец, и выстраиваю схемы репликации, которые дают масштабирование чтения и горячий резерв без сюрпризов при переключении. К резервным копиям я отношусь всерьёз: для меня это значит проверять восстановление, а не просто ставить дамп в расписание и надеяться. Когда схему нужно менять на живой таблице с миллионами строк, я планирую миграцию так, чтобы она шла онлайн, понятными шагами и с готовым планом отката, чтобы во время деплоя никто не задерживал дыхание.
Клиенты ценят, что я объясняю компромиссы человеческим языком и оставляю базу в состоянии, которое их команда сможет поддерживать сама. Я документирую, что и зачем изменил, и охотно работаю в паре с вашими разработчиками, чтобы знания закрепились.
— Тюнинг и конфигурация MySQL и PostgreSQL
— Оптимизация запросов и анализ планов выполнения
— Проектирование и ревизия индексов, удаление лишних
— Настройка репликации: потоковая, логическая, реплики чтения, failover
— Стратегия бэкапов и проверенное восстановление на точку во времени
— Безопасные онлайн-миграции схемы с планом отката
— Диагностика медленных запросов, дедлоков и блокировок
— Планирование ёмкости, мониторинг и настройка алертов