Индекс ноги архитектора

Возомнил себя тут системным архитектором, только жизнь покажет так ли это в реальности. И тут вспомнил одного персонажа, который тоже считал себя архитектором.

Ему было около 30 когда мы работали вместе, он увлекался боксом и заходил везде "с ноги": "Я архитектор. 5 лет PHP. Сейчас все спроектирую". Вообще, видимо, его основная ошибка была в том, что бокс, как мне кажется, это про работу руками, но для открывания дверей он использовал, почему-то, ноги.

В проекте, который тогда делали, была одна проблема. При каждом обращении пользователя по API в базе обновлялось поле с временной меткой последнего визита. Пользователей было много и база немного подтормаживала.

Проблема была коллективно выявлена и архитектор заперся в комнате, чтобы ее решить. Через пару дней он сказал "Я знаю, что делать. Нужно повесить на это поле индекс. Непонятно почему вы это не сделали сразу".

Мне эта идея не понравилась как-то на интуитивном уровне, поэтому решил спросить у него в общем чате: "Ты аболютно точно уверен что это поможет?". "Конечно, я же архитектор!".

Ну хорошо. Сделали индекс, накатили на тестовое окружение. Вроде работает. Заливаем в продакшн - работает. Все хорошо. И пошли другие части приложения доламывать.

Через пару часов прибегает наш девопс и говорит: "Ребята! Инфраструктура стала жрать деньги. Наша база весит не 1 гигабайт, а почему-то 48". Побежали глядеть - у приложения уже агония началась.

Уж как мы все это исправляли - отдельная история. Просто накатить дамп базы - не вариант. Крипта, деньги крутятся, мир уже изменился.

Вот тогда-то я и узнал, что нельзя вешать индексы на часто изменяющиеся поля. Да и вообще постоянно изменять поля в базе - так себе идея. А подобные индексы иначе как "Индекс Архитектора" называть теперь и не получается.

Но при чем тут ноги-то, спросит внимательный читатель. Отвечаю: чтобы пережить груз вины и унижения каким-то "мидлом" из колхоза, архитектор принял спиртного и продолжил заходить везде "с ноги".

Поздно ночью он, зачем-то, оказался на кладбище и сломал одну из ног… о чье-то надгробие. Все-таки бокс - про работу руками, а не ногами. А системы проектировать надо совсем другими частями тела.

<2023-01-21 Sat>

Author: Nikita Mistiukov <me@nekifirus.com>

Created: 2023-01-21 Sat 11:52

Validate