Что произойдёт с базой данных, если в неё придёт 10 000 обновлений одной и той же строки?

Обновления одной строки становятся горячей точкой: конкурирующие транзакции ждут блокировку или получают конфликт. 10 000 запросов не выполнят изменение одной строки параллельно без координации.

Короткий ответ

Что ответить на собеседовании

Обновления одной строки становятся горячей точкой: конкурирующие транзакции ждут блокировку или получают конфликт. 10 000 запросов не выполнят изменение одной строки параллельно без координации.

Подробный разбор

Ответ с пояснениями

Условие

Что произойдёт с базой данных, если в неё придёт 10 000 обновлений одной и той же строки?

Ответ

Обновления одной строки становятся горячей точкой: конкурирующие транзакции ждут блокировку или получают конфликт. 10 000 запросов не выполнят изменение одной строки параллельно без координации.

В PostgreSQL очередь writers повышает задержки, создаёт WAL и новые версии строки; долгие транзакции усугубляют ситуацию. Итог зависит от SQL: атомарное SET counter = counter + 1 отличается от записи числа, заранее вычисленного в приложении, где возможны потерянные обновления. Учитывайте изоляцию, таймауты и повторы. Для счётчика можно агрегировать приращения или распределить нагрузку по нескольким записям, если допускает бизнес-семантика. Увеличение числа соединений само по себе такую последовательную точку не ускорит.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее