Course Outline
1. Understanding the PostgreSQL Query Planner
- Query execution plans and Query Planner algorithms (classic, genetic)
- Analysing query execution plans (data access methods, join strategies)
- Influencing plan selection (configuration parameters, pg_hint_plan)
2. Query Planner Statistics
- Cost estimation for execution plans
- Default statistics model
- The ANALYZE command and extended statistics
3. Effective Use of Indexes
- B-tree indexes (single column, composite, function-based, partial)
- Hash indexes
- BRIN indexes
- GiST and GIN indexes
4. Utilizing Advanced Table Structures
- Partitioned tables
- Unlogged tables
- Temporary tables
- Materialised views
5. Managing Cache Memory
- Buffer Cache
- Work Memory
- Maintenance Work Memory
6. Parallel Query Execution
- Architecture overview
- Configuration parameters
- Analysing parallelized query execution plans
7. Workload and Performance Monitoring
- Logging slow queries
- Utilizing the auto_explain extension
- Utilizing the pg_stat_statements extension
- Understanding Cumulative Statistics
8. Benchmarking with PgBench
Requirements
- Completion of PostgreSQL Server Administration or equivalent expertise
- Practical experience with SQL and PostgreSQL operations
Audience
Database Administrators, DevOps Engineers, and Developers tasked with tuning and maintaining PostgreSQL in production environments.
Testimonials (3)
Tuning strategies.
Jeffrey Zieg - Matrix Consulting
Course - PostgreSQL Performance Tuning
CTE and indexes. Maybe more likely to use partitioning, explain analyze and vacuum on daily-base work
Lorenzo Antonelli - Innova S.P.A
Course - PostgreSQL Fundamentals
Logging behaviour when the instance is under stress, and the hierarchy/nomenclature of instances, databases, files, etc.