Как базы данных затягивают в системное программирование: подкаст с инженером

Адам Праут рассказывает, как работа с БД превращает обычного разработчика в хардкорного системщика.
Если вы думаете, что базы данных — это скучные таблички и медленные запросы, то вы просто не слушали Адама Праута. В свежем эпизоде подкаста Talking Postgres он делится историей перехода из Memsql в HorizonDB и объясняет, почему работа с БД — это лучший способ прокачать скиллы системного инженера.
Праут сравнивает работу над базами данных с попыткой собрать IKEA-стеллаж с закрытыми глазами: всё взаимосвязано, и одно неверное движение может обрушить всю конструкцию. Он рассказывает, как на практике приходится лезть в ядро ОС, оптимизировать память и бороться с латентностью — и всё ради того, чтобы ваш SQL-запрос выполнился на миллисекунду быстрее.
Особенно забавно звучат истории про то, как «простые» изменения в индексах приводили к эффекту бабочки на продакшене. Праут признаётся: «Каждый раз, когда я думал, что понял, как работает база данных, она находила способ меня удивить». Знакомое чувство, правда? Особенно когда после ночного деплоя обнаруживаешь, что CI сломался из-за неучтённой блокировки.
Кстати, для тех, кто хочет погрузиться в тему, но боится сложности: Праут советует начать с чтения исходников PostgreSQL. Говорит, это как разобрать старый Калашников — страшно только сначала, а потом понимаешь, как всё гениально устроено.
Комментарий студии METABYTE: Если вам кажется, что базы данных — это магия чёрного ящика, приходите к нам — мы поможем заглянуть под капот. И да, мы тоже любим копаться в планах запросов после полуночи.