Открыто

Курс по Оптимизации PostgreSQL 4.0 [Евгений Аристов]

Тема в разделе "Курсы по администрированию", создана пользователем Топикстартер, 1 сен 2025.

Основной список: 17 участников

Резервный список: 2 участников

  1. 1 сен 2025
    #1
    Топикстартер
    Топикстартер ЧКЧлен клуба

    Складчина: Курс по Оптимизации PostgreSQL 4.0 [Евгений Аристов]

    1.png

    Версия 4.0 сильно переработана и добавлена новая практика и дополнительные исследования, рассматриваются незадокументированные нюансы temp table, work_mem, volatile, HOT update и других внутренних структур, новые подходы к проектированию (более 10 новых пунктов только в занятии по оптимизации запросов), RLS – row level security, фичи audit и многое многое другое

    Цель курса – освоение лучших практик , которые позволят ускорить существующие решения, минимизировать простои и избежать граблей:

    Практический курс уникален для России и мира, предназначен для ДБА, архитекторов, девопсов
    Каждое занятие включает тестирование примеров на стендах
    Построен только на актуальных кейсах по реальным задачам, без воды
    Экономит время и ресурсы как для текущих проектов, так и для модернизации существующих
    Позволить ускорить поиск проблемных мест. Все собрано в одном месте с учетом экспертизы
    Увеличивает быстродействие баз данных как Постгреса, так и остальных субд
    Позволяет осознанно подходить к проектированию больших баз данных, изменению схемы данных
    Оптимизирует планирование ресурсов для новых БД за счёт подробных инструкций, позволяет прогнозировать будущие проблемы
    Бест практис, чеклисты и антипаттерны к каждой лекции
    Сотни примеров по подходам к траблшутину БД
    По желанию домашние задания идут к каждой лекции

    Состав лекций:
    1. Первичная настройка ОС и PostgreSQL
    2. Коннектинг к PostgreSQL. Права пользователя
    3. Настройка файловой системы
    4. Настройка бэкапов и репликации
    5. Мониторинг, профилирование и логирование
    6. Тюнинг shared_buffers, background writer, checkpoint, WAL
    7. Особенности работы Vacuum, work_mem, statistic collector, locks
    8. Оптимизация схемы данных
    9. Оптимизация запросов
    10. Обслуживание СУБД. Работа на стенде
    1. Первичная настройка ОС и PostgreSQL
    • проблематика
    • конфигурация ВМ & ОС
    • swap vs OOMKiller
    • тюнинг PostgreSQL
    • best practice & caveats
    • особенности бенчмарков
    • варианты измерения производительности
    • архитектура авторской БД по Тайским перевозкам
    • генерация и варианты использования от 6 до 600 млн. записей
    • работа на стенде с реальными кейсами в каждой лекции
    2. Коннектинг к PostgreSQL. Права пользователя
    • проблематика
    • на что стоит обратить внимание при работе с сетью
    • docker caveats
    • best practice по обмену данными
    • варианты connection pooling
    • варианты балансировщиков
    • архитектуры построения отказоустойчивых соединений
    • тестирование производительности пулконнекторов
    • pgbouncer vs odyssey vs pgagroal vs pgcat
    • нюансы при работе с правами пользователя
    • RLS – row level security
    3. Настройка файловой системы
    • проблематика
    • табличные пространства
    • toast и сжатие данных
    • json vs jsonb – что с ними не так?
    • типы технологий хранения
    • типы файловых систем
    • fsync – быстро ли это? и какие есть варианты
    • trim for SSD
    • контрольные суммы добро или зло
    • data corruption
    • шифрование данных
    • журналы транзакций – варианты тюнинга
    • каталог со статистикой – пути оптимизации
    • pg_class и связанные с ним проблемы
    • batch insert/update
    • unlogged table – киллер фича?
    4. Настройка бэкапов и репликации
    • проблематика
    • принципы построения HA и DR архитектур
    • варианты настройки бэкапов и тестирование производительности
    • преимущества Data Domain
    • варианты физической конфигурации
    • пять уровней синхронного коммита
    • варианты логической конфигурации
    • мастер мастер репликация – киллер фича?
    • подключаемся репликой к DBaaS primary
    • PITR
    • pg_rewind
    5. Мониторинг, профилирование и логирование
    • варианты мониторинга
    • список основных параметров для мониторинга и причины
    • pgcenter
    • PMM
    • auto_explain с нюансами
    • особенности профилирования
    • особенности логирования
    • инструменты анализа исторической нагрузки
    • pg_stat*
    • autovacumm_worker max load
    • audit
    6. Тюнинг shared_buffers, background writer, checkpoint, WAL
    • проблематика
    • особенности работы MVCC PostgreSQL
    • буферный кеш – всё ли так очевидно?
    • принцип работы и тюнинг background writer
    • Checkpoint, влияние на производительность и варианты тюнинга
    • восстановление после сбоев
    • pg_prewarm
    • WAL под капотом
    • движок OrioleDB
    7. Особенности работы Vacuum, work_mem, statistic collector, locks
    • проблематика
    • принцип работы и тюнинг vacuum/autovacuum
    • vacuum on long transaction
    • Transaction ID wraparound
    • HOT Update + tuning
    • особенности выделения памяти при работы c work_mem и связанные с эти caveats
    • особенности работы со статистикой
    • блокировки, что с ними не так?
    • deadlock норма или ошибка архитектора?
    • idle, idle in transaction – насколько плохо?
    8. Оптимизация схемы данных
    • что и почему нужно оптимизировать
    • как обновить схему данных и избежать проблем
    • добавление колонки, когда миллионы строк – паттерны
    • soft delete caveats
    • секционирование – киллер фича?
    • виртуальные колонки
    • использование предагрегатов mat.view vs triggers
    • индексы как серебряная пуля. или нет?
    • DEFERRABLE index
    • HypoPG
    • int VS bigint
    • caveat порядка колонок
    • типичные ошибки при изменении схемы данных
    • использование колоночного хранения
    • timescale db
    • варианты использования postgres_fdw для ускорения работы
    • проблемы миграции
    • изменение кодировки
    9. Оптимизация запросов
    • проблематика
    • пути оптимизации
    • возможные ошибки
    • анализ запросов – определяем узкие места
    • volatile or not
    • pg_hintplan
    • GEQO – генетический оптимизатор
    • использование IN & EXISTS & ANY
    • prepared statements
    • parameter sniffing caveat
    • 5 вариантов паджинации, самый быстрый и связанные проблемы
    • temp table отличный паттерн?
    • circuit breaker
    • принцип работы СТЕ и причины его использования
    • generated always – киллер фича?
    • best practice & caveats
    10. Обслуживание СУБД. Работа на стенде
    • причины обслуживания СУБД
    • отличие явного от неявного коммита
    • обновление мажорной версии
    • freeze
    • stat
    • index, redindex, concurrently
    • materialized view refresh, concurrently
    • pg_repack vs pgcompacttable vs pg_squeeze
    • особенности выгрузки данных для дев стенда
    • pg_orphaned
    • security
    • debug && trace stored procedure
    • STONITH && chaos engineering
    • стенд с проблемами производительности и чеклист, что нужно проверить. Оптимизируем работу

    Автор Евгений Аристов
    • Архитектор с 25+ опытом на хайлоад проектах (100++ Тб, 1 млн+ TPS)
    Цену поставит организатор
    Скрытая ссылка
     
    2 пользователям это понравилось.
  2. Последние события

    1. MahanM
      MahanM участвует.
      11 сен 2025 в 21:25
    2. Mark Schultz
      Mark Schultz участвует.
      9 сен 2025 в 15:24
    3. dlmka1
      dlmka1 участвует.
      8 сен 2025 в 20:38
    4. ober0n4ik
      ober0n4ik участвует.
      7 сен 2025