Unterschied zwischen Ansicht und materialisierter Ansicht

Ansicht vs Materialized View

Ansichten und materialisierte Ansichten (Ansichten) sind zwei Arten von Oracle-Datenbankobjekten. Beide Objekte beziehen sich auf Auswahlabfragen. Diese Auswahlabfragen fungieren als virtuelle Tabellen. Normalerweise beziehen sich Ansichten und Ansichten auf große Auswahlabfragen, für die Joins festgelegt wurden. Daher ist einer der Hauptvorteile von Ansichten, dass wir komplexe Auswahlabfragen als Ansichten speichern können. Daher können wir die Logik hinter den Auswahlabfragen 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 Viewnamen aus

Aussicht

Wie bereits erwähnt, ist view eine virtuelle Tabelle, die eine Auswahlabfrage verbirgt. Diese Auswahlabfragen werden nicht vorab ausgeführt. Wenn wir eine select-Anweisung aus einer Ansicht ausführen, führt sie die select-Anweisung aus, die sich innerhalb des Ansichtskörpers befindet. Nehmen wir die select-Aussage des Sichtkörpers als sehr komplexe Aussage an. Wenn es ausgeführt wird, dauert es einige Zeit (relativ mehr Zeit). Darüber hinaus verwendet view sehr wenig Speicherplatz für sich selbst. Das liegt daran, dass es nur eine select-Anweisung als Inhalt enthält.

Materialisierte Ansicht (Mview)

Dies ist eine besondere Sichtweise. Mviews werden erstellt, wenn Leistungsprobleme bei Ansichten auftreten. Wenn wir ein mview erstellen, führt es seine select-Abfrage aus und speichert seine Ausgabe als Momentaufnahme-Tabelle. Wenn wir Daten von Mview anfordern, muss die select-Anweisung nicht erneut ausgeführt werden. Es gibt die Ausgabe aus seiner Momentaufnahme-Tabelle. Daher ist die Ausführungszeit von mview kürzer als view (für dieselbe select-Anweisung). Mviews können jedoch nicht immer verwendet werden, da sie dieselbe Ausgabe zeigen, die als Momentaufnahme-Tabelle gespeichert wird. Wir sollten den View aktualisieren, um die neuesten Ergebnisse zu erhalten.

Was ist der Unterschied zwischen Ansicht und Mview?

1. Mview speichert seine Ausgabe immer als Momentaufnahme-Tabelle, wenn sie erstellt wird, aber view erstellt keine Tabellen.

2. View benötigt nicht viel Speicherplatz, um den Inhalt zu speichern, aber mview benötigt relativ viel Speicherplatz als eine View, um den Inhalt zu speichern (als Momentaufnahme-Tabelle).. 

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

4. Mviews müssen aktualisiert werden, um die neuesten Daten abzurufen. Ansichten geben jedoch immer die neuesten Daten wieder.

5. Das Schema braucht "Materialisierte Ansicht erstellen" Privileg zum Erstellen von Ansichten und für Ansichten, die es benötigt "Ansicht erstellen" Privileg.

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