Skip to content

andy-takker/pg-optimization

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

pg-optimization

PostgreSQL Ubuntu Raspberry Pi GCP

Домашние задания курса по оптимизации и администрированию PostgreSQL: тюнинг ОС и СУБД, бенчмарки, пулинг соединений, файловые системы, бэкапы и репликация. Каждая работа — воспроизводимый эксперимент: стенд, методика, замеры (медианы из 3 прогонов), графики и выводы.

Работы

ДЗ Тема Стенд Главный результат
hw01 Первичная настройка ОС и PostgreSQL: бенчмарки и тюнинг Raspberry Pi 4B Отключение fsync: ×2.9 TPS на записи; тюнинг памяти: +17% на чтении
hw02 Коннектинг: vanilla vs PgBouncer vs Odyssey vs HAProxy при 500+ коннектах GCP e2-standard-4 Пулер — не ускоритель: ваниль быстрее на быстрых запросах, но деградирует вдвое круче; оптимум пула ≈ 2×ядра
hw03 ФС: секционирование по дням, секции на 3 дисках, COPY vs pgloader, ext4/xfs/btrfs GCP + 3 диска Pruning: ×49 по ключу, медленнее мимо ключа; COPY ×20 быстрее pgloader; разница ФС ≤15%

Ключевые находки

fsync пулеры
hw01: цена fsync на медленном носителе — трёхкратная разница TPS hw02: каждый хоп и каждый лишний серверный коннект стоят TPS
pruning кеши
hw03: секционирование ускоряет только запросы по ключу hw03: рестарт СУБД сбрасывает лишь первый из трёх уровней кеша

Стенды

  • Raspberry Pi 4B (4×Cortex-A72, 8 ГБ, microSD) — узкое место IO: на нём эффекты fsync, чекпоинтов и WAL видны невооружённым глазом.
  • GCP e2-standard-4 (4 vCPU, 16 ГБ, pd-ssd) — повторяет лекционный стенд курса; для экспериментов с сотнями коннектов и пулерами.

Инструментарий

pgbench · PgBouncer · Odyssey · HAProxy · учебная БД «Тайские перевозки» (~6 млн строк) · pgconfigurator

Полезные материалы

About

Homework for a PostgreSQL optimization course: OS & DB tuning, benchmarking, connection pooling, file systems, backups and replication. Hands-on labs on Raspberry Pi 4B and GCP VMs with reports and charts.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors