Materialized view
Qui non salvi solo la ricetta: salvi anche il piatto pronto
Sezione intitolata “Qui non salvi solo la ricetta: salvi anche il piatto pronto”Una materialized view è simile a una view, ma con una differenza importante: salva anche il risultato della query.
È come avere una fotografia già pronta, invece di rifare il calcolo ogni volta da zero.
Una view normale ricalcola la scena quando guardi. Una materialized view conserva una copia del risultato, così alcune letture possono essere molto più veloci.
Perché può essere utile
Sezione intitolata “Perché può essere utile”Se una query è pesante e viene letta spesso, avere il risultato già materializzato può velocizzare molto le consultazioni.
Questo succede spesso in report e dashboard.
Un esempio piccolo
Sezione intitolata “Un esempio piccolo”Immagina un report che somma gli ordini per giorno:
CREATE MATERIALIZED VIEW vendite_giornaliere ASSELECT data_ordine, SUM(totale) AS totale_giornoFROM ordiniGROUP BY data_ordine;Invece di rifare la somma ogni volta, il database può leggere il risultato già preparato.
Il punto da ricordare
Sezione intitolata “Il punto da ricordare”La materialized view non si aggiorna sempre da sola nello stesso modo di una view normale. Ogni tanto il risultato va rigenerato o aggiornato.
Quando può avere senso sceglierla
Sezione intitolata “Quando può avere senso sceglierla”È una buona candidata quando il risultato è costoso da calcolare ma viene letto spesso.
Per report e dashboard, questa differenza può essere molto importante.