Il corso PostgreSQL Advanced Administration & Performance è un percorso avanzato rivolto a Database Administrator, sistemisti e professionisti IT che desiderano approfondire l'amministrazione, il monitoraggio, l'ottimizzazione e la gestione delle performance di database PostgreSQL in ambienti professionali e di produzione.
Il percorso affronta gli aspetti più importanti della gestione avanzata di PostgreSQL: configurazione del server, utilizzo delle risorse, memoria, connessioni, manutenzione, VACUUM e autovacuum, statistiche, indici, analisi dei piani di esecuzione e ottimizzazione delle query.
Particolare attenzione viene dedicata al performance tuning PostgreSQL, attraverso l'utilizzo di EXPLAIN ed EXPLAIN ANALYZE, delle statistiche del database e degli strumenti di monitoring messi a disposizione dal motore. Il partecipante impara a individuare query inefficienti, problemi di I/O, lock, attese, utilizzo anomalo delle risorse e configurazioni che possono influire negativamente sulle prestazioni.
Il corso approfondisce inoltre gli aspetti operativi indispensabili per la gestione di database PostgreSQL in produzione: strategie di backup e restore, WAL, archiviazione continua, Point-in-Time Recovery, principi di replica e gestione delle principali problematiche di disponibilità e recovery.
L'approccio è fortemente pratico: configurazioni, diagnostica, analisi delle query e procedure di manutenzione vengono affrontate attraverso esercitazioni e scenari realistici, con l'obiettivo di fornire competenze immediatamente applicabili nell'amministrazione quotidiana di infrastrutture PostgreSQL
Il corso è rivolto principalmente a:
- PostgreSQL Database Administrator;
- Database Administrator;
- System Administrator;
- Linux Administrator;
- DevOps Engineer;
- Cloud Engineer;
- Infrastructure Engineer;
- Site Reliability Engineer;
- Database Engineer;
- Backend Developer con responsabilità sul database;
- Application Architect;
- Solution Architect;
- responsabili infrastrutturali;
- tecnici IT che gestiscono database PostgreSQL;
- professionisti responsabili delle performance e dell'affidabilità dei sistemi dati;
- consulenti che amministrano ambienti PostgreSQL presso clienti.
Al termine del corso i partecipanti saranno in grado di:
- amministrare un'istanza PostgreSQL a livello avanzato;
- comprendere l'architettura e i principali processi del server;
- configurare i principali parametri che influenzano le performance;
- analizzare l'utilizzo di memoria, CPU, storage e I/O;
- monitorare sessioni, query, database, tabelle e indici;
- utilizzare le statistiche PostgreSQL per diagnosticare problematiche prestazionali;
- identificare query ad alto impatto;
- interpretare piani di esecuzione con EXPLAIN ed EXPLAIN ANALYZE;
- comprendere il comportamento del Query Planner;
- individuare scansioni, join e operazioni inefficienti;
- progettare e ottimizzare strategie di indicizzazione;
- gestire VACUUM, ANALYZE e autovacuum;
- individuare fenomeni di table e index bloat;
- diagnosticare lock, blocking session e problemi di concorrenza;
- utilizzare pg_stat_activity e le principali viste statistiche;
- utilizzare pg_stat_statements per analizzare il workload SQL;
- configurare logging e monitoring;
- pianificare strategie di backup e restore;
- comprendere WAL, archiviazione continua e Point-in-Time Recovery;
- conoscere i principi della streaming replication;
- affrontare attività strutturate di troubleshooting e performance tuning.
Modulo 1 – Advanced PostgreSQL Administration
- Architettura e configurazione avanzata PostgreSQL
- Gestione delle risorse e configurazione del server
Modulo 2 – Monitoring e Troubleshooting
- Monitoring dell'attività del database
- Sessioni, lock, transazioni e concorrenza
Modulo 3 – Query Performance & Optimization
- Query Planner ed EXPLAIN
- Indexing e ottimizzazione delle query
Modulo 4 – Database Maintenance & Performance
- VACUUM, ANALYZE e Autovacuum
- Storage, bloat e manutenzione degli indici
Modulo 5 – Backup, Recovery e Continuità Operativa
- Backup e Restore avanzato
- WAL, PITR e introduzione alla replica
Modulo 6 – Performance Troubleshooting
- Performance tuning end-to-end
- Troubleshooting Lab e Project Work finale
Il corso utilizza una metodologia avanzata, pratica e laboratoriale, finalizzata alla gestione di scenari PostgreSQL realistici.
Il modello didattico consigliato è:
Concetto → Dimostrazione → Laboratorio → Diagnosi → Ottimizzazione → Verifica
La formazione non deve limitarsi alla presentazione dei parametri PostgreSQL. Il docente dovrà mostrare come comprendere quando e perché intervenire sulla configurazione.
Particolare attenzione viene dedicata al metodo di troubleshooting basato sui dati:
Baseline → Misurazione → Diagnosi → Intervento → Nuova misurazione
La metodologia comprende:
- spiegazioni tecniche;
- dimostrazioni live;
- configurazioni guidate;
- analisi di execution plan;
- query tuning;
- monitoring live;
- simulazione di problemi;
- troubleshooting;
- laboratori;
- confronto tra situazione iniziale e ottimizzata;
- project work finale.
Distribuzione consigliata:
35% teoria – 65% pratica e laboratorio
- Ambiente PostgreSQL Lab
- Database Performance Lab
- SQL Script
- Query Performance Lab
- Configuration Files
- Backup & Recovery Lab
- Manuale del partecipante
- Quick Reference DBA
- Workbook Laboratori
- Soluzioni docente
È richiesta una precedente conoscenza operativa di PostgreSQL.
In particolare è consigliata esperienza con:
- installazione e utilizzo di PostgreSQL;
- database e schema;
- tabelle;
- viste;
- indici;
- utenti e ruoli;
- SQL;
- SELECT, INSERT, UPDATE e DELETE;
- JOIN;
- transazioni;
- utilizzo di psql o strumenti equivalenti;
- elementi fondamentali di amministrazione PostgreSQL.
È inoltre consigliata una conoscenza di base di:
- sistemi operativi Linux;
- filesystem;
- networking TCP/IP;
- risorse server quali CPU, RAM e storage.
È preferibile aver già gestito o utilizzato un'istanza PostgreSQL in ambiente di sviluppo, test o produzione.
Verifica dell’apprendimento
- valutazione degli elaborati prodotti
- test finale
- eventuale project work
Attestato
Al termine del corso verrà rilasciato un attestato di frequenza se questa sia >=80% delle ore, oppure su richiesta un attestato di frequenza "positiva" cioè rafforzato dall'esito positivo del test finale.