Unterschied Zwischen Ansicht Und Materialisierter Ansicht

Unterschied Zwischen Ansicht Und Materialisierter Ansicht
Unterschied Zwischen Ansicht Und Materialisierter Ansicht

Video: Unterschied Zwischen Ansicht Und Materialisierter Ansicht

Video: Unterschied Zwischen Ansicht Und Materialisierter Ansicht
Video: Was ist der Unterschied zwischen Ordnern und Ansichten? 2024, November
Anonim

Ansicht gegen materialisierte Ansicht

Ansichten und materialisierte Ansichten (mviews) sind zwei Arten von Oracle-Datenbankobjekten. Beide Objekte verweisen auf ausgewählte Abfragen. Diese ausgewählten Abfragen fungieren als virtuelle Tabellen. Normalerweise verweisen Ansichten und mviews auf große ausgewählte Abfragen mit mehreren Verknüpfungen. Daher ist einer der Hauptvorteile von Ansichten, dass wir komplexe Auswahlabfragen als Ansichten speichern können. Daher können wir die Logik hinter den ausgewählten Abfragen vor den Endbenutzern verbergen. Wenn wir die komplexe select-Anweisung ausführen müssen, müssen wir sie nur ausführen

Wählen Sie * aus dem Namen

Aussicht

Wie bereits erwähnt, ist view eine virtuelle Tabelle, die eine ausgewählte Abfrage verbirgt. Diese Auswahlabfragen werden nicht vorab ausgeführt. Wenn wir eine select-Anweisung aus einer Ansicht ausführen, wird die select-Anweisung ausgeführt, die sich im Ansichtskörper befindet. Nehmen wir die select-Anweisung des Ansichtskörpers als eine sehr komplexe Anweisung an. Wenn es ausgeführt wird, dauert die Ausführung einige Zeit (relativ mehr Zeit). Darüber hinaus benötigt die Ansicht nur sehr wenig Speicherplatz, um sich selbst zu speichern. Das liegt daran, dass es nur eine select-Anweisung als Inhalt hat.

Materialisierte Ansicht (Mview)

Dies ist eine besondere Art der Ansicht. Mviews werden erstellt, wenn Leistungsprobleme mit Ansichten auftreten. Wenn wir eine mview erstellen, führt sie ihre Auswahlabfrage aus und speichert ihre Ausgabe als Snapshot-Tabelle. Wenn wir Daten von Mview anfordern, muss die select-Anweisung nicht erneut ausgeführt werden. Es gibt die Ausgabe aus seiner Snapshot-Tabelle. Daher ist die Ausführungszeit von mview kürzer als die von view (für dieselbe select-Anweisung). Mviews können jedoch nicht immer verwendet werden, da dieselbe Ausgabe angezeigt wird, die als Snapshot-Tabelle gespeichert ist. Wir sollten die mview aktualisieren, um die neueste Ergebnismenge zu erhalten.

Was ist der Unterschied zwischen View und Mview?

1. Mview speichert seine Ausgabe beim Erstellen immer als Snapshot-Tabelle, aber view erstellt keine Tabellen.

2. View benötigt keinen großen Speicherplatz zum Speichern des Inhalts, aber mview benötigt relativ viel Speicherplatz als eine Ansicht zum Speichern des Inhalts (als Snapshot-Tabelle).

3. View benötigt eine längere Ausführungszeit, aber mview benötigt eine geringere Ausführungszeit als Views (für dieselbe select-Anweisung).

4. Mviews müssen aktualisiert werden, um die neuesten Daten zu erhalten, aber Ansichten geben immer die neuesten Daten an.

5. Das Schema benötigt die Berechtigung "Materialisierte Ansicht erstellen", um mviews zu erstellen, und für Ansichten die Berechtigung "Ansicht erstellen".

6. Indizes können für mviews erstellt werden, um mehr Leistung zu erzielen. Indizes können jedoch nicht für Ansichten erstellt werden.

Empfohlen: