Практическая мини-книга
Индексы без мистики
Как читать планы запросов и заставить базу делать меньше работы
Константин Потапов
Senior Python Backend / R&D Engineer
PostgreSQL · MySQL · ORM
Для backend-разработчиков, которые хоть раз произносили опасную фразу «да там просто индекс добавить». Не заклинания, а механика: почему один индекс спасает вечер, другой ничего не меняет, а третий тихо душит запись.
Без email и регистрации — просто откройте или сохраните.
Что внутри
Пять частей — от честного разговора о том, зачем индекс нужен, до диагностики, антипаттернов и финальной шпаргалки.
Сначала реальность
Зачем индекс нужен на самом деле, как база ищет строки и почему «просто добавь индекс» чаще самоуговор, чем план.
Основные конструкции
B-tree, составные индексы и порядок колонок, селективность, покрывающие и частичные индексы, уникальность как бизнес-правило.
Не только B-tree
Текст, JSON и география: GIN, триграммы, функциональные и пространственные индексы — тип индекса под тип вопроса.
Диагностика
Как читать EXPLAIN без гадания и практический алгоритм проектирования индексов от нагрузки, а не от схемы.
Ошибки и шпаргалка
Когда индекс стал балластом, почему ORM не отменяет физику базы, антипаттерны и финальная шпаргалка.
Если коротко, вся книга — про одно правило:
«Хороший индекс — не тот, который существует. Хороший индекс — тот, после которого база делает меньше работы, а ты можешь это доказать.»
Об авторе
Константин Потапов — Senior Python Backend / R&D Engineer. Работает с Python, Django, FastAPI, PostgreSQL, MariaDB, Redis, Docker, Linux, интеграциями и инженерными инструментами.
Главная профессиональная привычка — не верить красивому объяснению, пока оно не прошло через код, данные и проверку реальностью. База данных не впечатляется уверенностью разработчика и не ускоряется от хорошего настроения команды.
Заберите книгу и перестаньте гадать по slow query log
Короткая инженерная книга про дисциплину: сначала понять работу запроса, потом менять схему. Меньше мистики, больше наблюдаемой работы.
Скачать PDF бесплатноБез email и регистрации.