Materialisierte Ansichten

Datenbankdesign

Lis Sulmont

Curriculum Manager

Zwei Arten von Ansichten

Ansichten

  • Auch als nicht materialisierte Ansichten bekannt
  • Wie wir Ansichten bisher definiert haben
Datenbankdesign

Zwei Arten von Ansichten

Ansichten

  • Auch als nicht materialisierte Ansichten bekannt
  • Wie wir Ansichten bisher definiert haben

Materialisierte Ansichten

  • Physisch materialisiert
Datenbankdesign

Materialisierte Ansichten

  • Speichert die Abfrageergebnisseund nicht die Abfrage
  • Eine materialisierte Ansicht abzufragen heißt, auf die gespeicherten Abfrageergebnisse zuzugreifen.
    • Die Abfrage nicht wie eine nicht materialisierte Ansicht ausführen
  • Aktualisiert oder neu erstellt, wenn man dazu aufgefordert wird oder es geplant ist
Datenbankdesign

Wann man materialisierte Ansichten benutzt

  • Lang laufende Abfragen
  • Die Ergebnisse der zugrunde liegenden Abfrage ändern sich nicht oft.
  • Datenlager, weil OLAP nicht so viele Schreibvorgänge braucht.
    • Spar dir die Rechenkosten für häufige Abfragen
Datenbankdesign

Materialisierte Ansichten einrichten

(in PostgreSQL)

$$

CREATE MATERIALIZED VIEW my_mv AS SELECT * FROM existing_table;

$$

REFRESH MATERIALIZED VIEW my_mv;
Datenbankdesign

Abhängigkeiten verwalten

  • Materialisierte Ansichten hängen oft von anderen materialisierten Ansichten ab.
Datenbankdesign

Beispiel für Abhängigkeit

Diagramm der X- und Y-Ansichten mit einem Pfeil von X und Y, der eine Abhängigkeit zeigt

Datenbankdesign

Abhängigkeiten verwalten

  • Materialisierte Ansichten hängen oft von anderen materialisierten Ansichten ab.
  • Erstellt beim Aktualisieren von Ansichten eine Abhängigkeitskette.
  • Nicht die effizienteste Methode, alle Ansichten gleichzeitig zu aktualisieren.
Datenbankdesign

Tools zum Verwalten von Abhängigkeiten

  • Benutze gerichtete azyklische Graphen (DAGs), um den Überblick über die Ansichten zu behalten.
  • Pipeline-Planungstools

Beispiel für einen gerichteten azyklischen Graphen

Logos von Airflow und Luigi

Datenbankdesign

Lass uns üben!

Datenbankdesign

Preparing Video For Download...