Vizualizări materializate

Proiectarea bazelor de date

Lis Sulmont

Curriculum Manager

Două tipuri de vizualizări

Vizualizări

  • Cunoscute și ca vizualizări nematerializate
  • Modul în care am definit vizualizările până acum
Proiectarea bazelor de date

Două tipuri de vizualizări

Vizualizări

  • Cunoscute și ca vizualizări nematerializate
  • Modul în care am definit vizualizările până acum

Vizualizări materializate

  • Materializate fizic
Proiectarea bazelor de date

Vizualizări materializate

  • Stochează rezultatele interogării, nu interogarea
  • Accesarea unei vizualizări materializate înseamnă accesarea rezultatelor stocate
    • Nu rulează interogarea ca o vizualizare nematerializată
  • Reîmprospătată manual sau programat
Proiectarea bazelor de date

Când se utilizează vizualizările materializate

  • Interogări de lungă durată
  • Rezultatele interogării se modifică rar
  • Depozite de date, deoarece OLAP nu este intensiv la scriere
    • Reducerea costului computațional al interogărilor frecvente
Proiectarea bazelor de date

Implementarea vizualizărilor materializate

(în PostgreSQL)

$$

CREATE MATERIALIZED VIEW my_mv AS SELECT * FROM existing_table;

$$

REFRESH MATERIALIZED VIEW my_mv;
Proiectarea bazelor de date

Gestionarea dependențelor

  • Vizualizările materializate depind adesea de alte vizualizări materializate
Proiectarea bazelor de date

Exemplu de dependență

$$ Diagramă a vizualizărilor X și Y cu o săgeată de la X la Y indicând o dependență

Proiectarea bazelor de date

Gestionarea dependențelor

  • Vizualizările materializate depind adesea de alte vizualizări materializate
  • Creează un lanț de dependențe la reîmprospătare
  • Reîmprospătarea simultană a tuturor vizualizărilor nu este eficientă
Proiectarea bazelor de date

Instrumente pentru gestionarea dependențelor

  • Utilizați grafuri aciclice direcționate (DAG) pentru a urmări vizualizările $$ $$
  • Instrumente de planificare a fluxurilor de lucru

Exemplu de graf aciclic direcționat

Logo-urile Airflow și Luigi

Proiectarea bazelor de date

Să exersăm!

Proiectarea bazelor de date

Preparing Video For Download...