Оптимизация производительности баз

<b>Горизонтальное или вертикальное масштабирование: не путайте скорость с размером кластера</b>

<b>Горизонтальное или вертикальное масштабирование: не путайте скорость с размером кластера</b>

Коллеги, давайте разберем план выполнения. Вертикальное масштабирование — это усилить одну машину: больше CPU, RAM, IOPS. Горизонтальное — добавить узлы и разнести нагрузку. Оба подхода рабочие, но у каждого своя цена: у первого потолок железа, у второго — сложность синхронизации и распределения данных.

Если запросы упираются в один «тяжёлый» сервер, сначала проверьте узкие места: блокировки, плохие планы, лишние сканы, горячие таблицы. Часто ускорение даёт не новый узел, а нормальный индекс, переписанный запрос и корректная селективность статистики. Золотое правило: сначала мониторинг, потом индексы.

Горизонталь нужна, когда один сервер уже не тянет по ресурсу или отказоустойчивости. Но там сразу появляются репликация, шардирование, лаг, конфликт записей и сложнее бэкапы. В продакшене так лучше не делать, и вот почему: «просто добавить сервер» без схемы данных обычно превращается в дорогой способ умножить проблемы.

Практика простая: если база маленькая, а нагрузка растёт неравномерно — начинайте с вертикали. Если данные и трафик растут стабильно, а один узел стал пределом — проектируйте горизонталь заранее, вместе с ключами распределения и правилами записи.

Схема простая, но дьявол кроется в статистике: масштабирование лечит ресурс, а не плохую модель данных.
Этот пост опубликован в Telegram-канале Оптимизация производительности баз. Подписаться можно по ссылке: @database_performance_tuning_arb.
tech

Свежие посты в категории «Tech Infrastructure»

Все каналы категории →

start

Готовы запустить рекламу через сеть public.tg?

Новый оффер, продукт, GEO, кейс, событие или партнёрский запуск — соберём маршрут под задачу и отдадим медиаплан.

Telegram для медиаплана: @dumay. Быстрый тест: $20 за канал, $1000 за пакет по сети.