Программирование [Bin Wang] PostgreSQL изнутри: внутреннее устройство, трассировка и производительность

Регистрация
7 Апр 2025
Сообщения
10,778
Реакции
81
Автор: Bin Wang​
Название: PostgreSQL изнутри: внутреннее устройство, трассировка и производительность​

cover.jpg

Язык: Английский Вес архива: 250 МБ


Этот курс создан для тех, кто хочет смотреть на PostgreSQL не как на «чёрный ящик», а как на сложную, но понятную систему с предсказуемым поведением. Вы шаг за шагом разберёте внутреннюю механику СУБД, научитесь интерпретировать низкоуровневые сигналы производительности и находить оптимальные решения там, где обычные методы уже не работают.

О чём этот курс

Вы начнёте с привычных SQL‑конструкций, после чего постепенно перейдёте к глубинным механизмам работы PostgreSQL. В процессе вы научитесь понимать системные процессы, структуру хранения данных и факторы, определяющие реальную производительность.

Основные темы

Планировщик запросов: разбор статистики, cost-модели, выбор индексов и стратегий выполнения.
Транзакции и уровни изоляции: механика MVCC, версии строк, проблемы многоверсионности.
B+Tree и другие индексы: внутренняя структура, причины роста bloating и методы борьбы.
Shared Buffers и работа с памятью: поиск страниц, буферные состояния, взаимодействие с ОС.
WAL: механизм журналирования, impact на производительность, стратегия чекпоинтов.
Vacuum и autovacuum: алгоритмы, триггеры запуска, оптимизация параметров.
Репликация: физическая и логическая, особенности, задержки, мониторинг.

Практическая часть

Каждый блок курса сопровождается практическими заданиями, направленными на изучение поведения СУБД в реальных сценариях нагрузки.

Инструменты и навыки

EXPLAIN ANALYZE: BUFFERS, VERBOSE, TIMING, сравнение планов и диагностика узких мест.
perf и gdb: низкоуровневый анализ, трассировка, поиск «тяжёлых» участков.
Анализ логов PostgreSQL: slow query logs, логирование чекпоинтов, статистика ожиданий.

Чему вы научитесь

К концу курса вы будете не просто писать запросы — вы будете понимать, как PostgreSQL принимает решения и как поведение ядра влияет на результат.

По итогам обучения вы сможете

• осознанно оптимизировать запросы и структуры данных;
• грамотно настраивать конфигурацию PostgreSQL под конкретные нагрузки;
• находить проблемы в производительности на уровне ядра, а не только на уровне SQL;
• читать и анализировать сложные планы выполнения и трассировки;
• предсказуемо управлять ресурсоёмкими процессами (vacuum, autovacuum, checkpoints).

Итог

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

СКАЧАТЬ:
 📥 Скрытое содержимое! Войдите или Зарегистрируйтесь
 

Похожие темы

10,840Темы
10,893Сообщения
787Пользователи
Ganna!Новый пользователь
Сверху