Перейти к основному содержимому

Практикум PostgreSQL — чек-лист самопроверки

Загрузка вопросов…

Вопросы

  1. Что такое MVCC и зачем PostgreSQL создаёт новую версию строки при UPDATE?
  2. Какие системные поля xmin, xmax, ctid означают?
  3. Что такое snapshot транзакции?
  4. Зачем нужен VACUUM и чем он отличается от VACUUM FULL?
  5. Что такое bloat и как autovacuum с ним связан?
  6. Что такое transaction ID wraparound и чем он опасен?
  7. Какие роли у checkpointer, bgwriter и walwriter?
  8. Зачем WAL записывается до сброса dirty pages на диск?
  9. Что даёт EXPLAIN (ANALYZE, BUFFERS)?
  10. Когда уместен GIN вместо B-tree?
  11. Для каких данных подходит BRIN?
  12. Что такое partial index?
  13. Как work_mem может привести к OOM?
  14. Зачем на SSD снижают random_page_cost?
  15. Какой минимальный wal_level нужен для streaming replication?
  16. Чем logical replication отличается от physical?
  17. Что такое Hot Standby?
  18. Зачем PgBouncer в режиме transaction pooling?
  19. Почему данные Postgres в Docker нужно хранить в volume?
  20. Чем StatefulSet предпочтительнее Deployment для Postgres?
  21. Какую роль играет Patroni?
  22. Когда Greenplum уместнее «обычного» Postgres?
  23. Чем Wal-G дополняет pg_dump?
  24. Что такое PITR?
  25. Какие метрики смотреть в pg_stat_statements?
  26. Зачем тестировать restore бэкапа?
  27. Что автоматизирует Ansible vs Terraform для БД?
  28. Почему NOTIFY не заменяет Kafka для критичных событий?
  29. Как партиционирование помогает удалять старые логи?
  30. Где в энциклопедии базовый синтаксис SQL и JSONB-практикум?
  31. Чем phpPgAdmin дополняет psql и pgAdmin на учебном стенде?
  32. Какая цепочка глав SQL ведёт к практикуму 8.11 после phpPgAdmin?

Практические задания

  1. Поднимите Postgres в Docker Compose с healthcheck и volume; выполните серию UPDATE, отследите n_dead_tup.
  2. Оптимизируйте один медленный запрос — индекс + EXPLAIN ANALYZE до и после.
  3. Настройте read replica или изучите pg_stat_replication на lab primary/standby.
  4. Сделайте pg_dump -Fc и restore в новую БД; проверьте целостность row count.
  5. Опишите на одной странице архитектуру «приложение + PgBouncer + Patroni 3-node» для вашего pet-project.

Связанные материалы


См. также

Другие статьи этого же раздела в боковом меню (как на странице "О разделе").