Contents
Was ist materialisierte Ansicht?
In der Datenverarbeitung ist eine materialisierte Ansicht ein Datenbankobjekt, das die Ergebnisse einer Abfrage enthält. Zum Beispiel kann es eine lokale Kopie von Daten sein, die sich entfernt befinden, oder kann eine Teilmenge der Zeilen und/oder Spalten einer Tabelle oder eines Join-Ergebnisses sein oder kann eine Zusammenfassung unter Verwendung einer Aggregatfunktion sein.
Materialisierte Ansichten können für viele Zwecke verwendet werden, darunter:
- Denormalisierung
- Validierung
- Datenlagerung
- Reproduzieren
Was Sie über materialisierte Ansicht wissen müssen
- Materialisierte Ansichten sind physische Kopien von Ursprungstabellen, die in einer Datenbank enthalten sind.
- Materialisierte Ansichten sind nicht virtuelle Schemata. Es ist ein üblicher Bestandteil des Datenbank-Warehousing. Es wird hauptsächlich zum Zusammenfassen, Vorberechnen, Replizieren und Verteilen von Daten usw. verwendet.
- Eine materialisierte Ansicht kann Daten speichern. Es macht den Zugriff auf Daten zu einem schnelleren Prozess.
- Materialisierte Ansichten müssen mithilfe von Triggern oder manuell aktualisiert werden.
- Materialisierte Ansichten werden auf der Disc gespeichert.
- Eine materialisierte Ansicht kann in einer anderen Datenbank oder derselben Datenbank wie die Basistabelle(n) gespeichert werden.
- Es gibt keinen SQL-Standard zum Definieren einer materialisierten Ansicht und die Funktionalität wird von einigen Datenbanksystemen als Erweiterung bereitgestellt.
- Bei materialisierten Ansichten ist die Rowid anders.
- Eine materialisierte Ansicht lässt sich schnell verarbeiten. Ein Materialized View Log dient als Schemaobjekt, das alle Änderungen an den in einer Mastertabelle enthaltenen Daten aufzeichnet und inkrementell aktualisiert werden kann.
- Eine materialisierte Ansicht spiegelt keine Echtzeitdaten wider. Die Daten sind nur so aktuell wie beim letzten Aktualisieren der materialisierten Ansicht.
- Eine materialisierte Ansicht wird am besten verwendet, wenn Sie eine wirklich große Tabelle haben und die Leute häufig Aggregate darauf durchführen und Sie eine schnelle Reaktion benötigen.
- Eine materialisierte Ansicht ist eine ”im Voraus beantwortete” Abfrage – die Abfrage wird ausgeführt, wenn die materialisierte Ansicht aktualisiert wird. Das Ergebnis wird in der Datenbank gespeichert und die Abfrage durchsucht nur das Ergebnis.
- DML-Befehle können in materialisierten Ansichten ausgeführt werden.
- Materialisierte Ansichten sind effizient, wenn häufig auf die Ansicht zugegriffen wird.
Sicht
Ansichten in der Datenbank sind eine Art logische virtuelle Tabellen. Es ist eigentlich eine Zusammenstellung einer Tabelle in Form einer vorgegebenen SQL-Abfrage. Eine Ansicht hat auch Zeilen und Spalten, wie sie sich in einer echten Tabelle in der Datenbank befinden. Wir können eine Ansicht erstellen, indem wir Felder aus einer oder mehreren in der Datenbank vorhandenen Tabellen auswählen, die von der geschriebenen SQL-Abfrage zum Erstellen einer Ansicht abhängt. Eine Ansicht kann entweder alle Zeilen einer Tabelle oder bestimmte Zeilen basierend auf bestimmten Bedingungen enthalten.
Ansichten, bei denen es sich um eine Art virtueller Tabellen handelt, ermöglichen Benutzern Folgendes:
- Strukturieren Sie Daten auf eine Weise, die Benutzer oder Benutzerklassen als natürlich oder intuitiv empfinden.
- Schränken Sie den Zugriff auf die Daten so ein, dass ein Benutzer genau das sehen und manchmal ändern kann, was er benötigt, und nicht mehr.
- Fassen Sie Daten aus verschiedenen Tabellen zusammen, die zum Erstellen von Berichten verwendet werden können.
Was Sie über View wissen müssen
- Views sind virtuelle Tabellen, die aus einer einzelnen/mehreren Views oder Tabellen entwickelt werden.
- Ansichten sind die virtuellen Projektionen einer Ausgabeabfrage oder die dynamische Ansicht von Daten in einer Datenbank, die dem Benutzer bei Bedarf angezeigt wird.
- Views können keine Daten speichern, sie zeigen nur auf die Daten, die angezeigt werden müssen.
- Ansichten werden jedes Mal automatisch aktualisiert, wenn eine virtuelle Ansicht/Tabelle verwendet wird.
- Ansichten werden nicht physisch auf der Festplatte gespeichert.
- Eine Ansicht kann überall dort verwendet werden, wo eine Tabelle verwendet werden kann.
- Es gibt einen SQL-Standard zum Definieren einer Ansicht.
- Wenn eine Ansicht unter Verwendung einer beliebigen Tabelle erstellt wird, entspricht die Zeilenfolge der Ansicht der Zeile der ursprünglichen Tabelle.
- Aufrufe werden langsam verarbeitet.
- Die Ausgabe einer Ansicht wird im laufenden Betrieb erstellt; es zeigt Echtzeitdaten aus den abgefragten Basistabellen an.
- Eine Ansicht wird am besten verwendet, wenn Sie die Implementierungsdetails einer komplexen Abfrage ausblenden oder den Zugriff auf eine Reihe von Zeilen/Spalten in den Basistabellen einschränken möchten.
- Die SQL einer Ansicht wird zur Laufzeit ausgeführt. Die Ergebnisse werden aus den Basistabellen der View abgerufen, wenn die View abgefragt wird.
- In einfachen Ansichten sind DML-Befehle nicht möglich, wenn sie mit mehreren Tabellen erstellt werden.
- Ansichten sind nützlich, wenn selten auf die Ansicht zugegriffen wird.
Lesen Sie auch: Unterschied zwischen Normalisierung und Denormalisierung in SQL
Unterschied zwischen materialisierter Ansicht und Ansicht in Tabellenform
VERGLEICHSGRUNDLAGE | MATERIALISIERTE ANSICHT | AUSSICHT |
Definition | Materialisierte Ansichten sind physische Kopien von Ursprungstabellen, die in einer Datenbank enthalten sind. | Views sind virtuelle Tabellen, die aus einer einzelnen/mehreren Views oder Tabellen entwickelt werden. |
Beschreibung | Materialisierte Ansichten sind nicht virtuelle Schemata. Es ist ein üblicher Bestandteil des Datenbank-Warehousing. Es wird hauptsächlich zum Zusammenfassen, Vorberechnen, Replizieren und Verteilen von Daten usw. verwendet. | Ansichten sind die virtuellen Projektionen einer Ausgabeabfrage oder die dynamische Ansicht von Daten in einer Datenbank, die dem Benutzer bei Bedarf angezeigt wird. |
Fähigkeit | Eine materialisierte Ansicht kann Daten speichern. Es macht den Zugriff auf Daten zu einem schnelleren Prozess. | Views können keine Daten speichern, sie zeigen nur auf die Daten, die angezeigt werden müssen. |
Aktualisierung | Materialisierte Ansichten müssen mithilfe von Triggern oder manuell aktualisiert werden. | Ansichten werden jedes Mal automatisch aktualisiert, wenn eine virtuelle Ansicht/Tabelle verwendet wird. |
Festplattenspeicherplatz | Materialisierte Ansichten werden auf der Disc gespeichert. | Ansichten werden nicht physisch auf der Festplatte gespeichert. |
Speicherfähigkeit | Eine materialisierte Ansicht kann in einer anderen Datenbank oder derselben Datenbank wie die Basistabelle(n) gespeichert werden. | Eine Ansicht kann überall dort verwendet werden, wo eine Tabelle verwendet werden kann. |
SQL-Definitionsstandard | Es gibt keinen SQL-Standard zum Definieren einer materialisierten Ansicht und die Funktionalität wird von einigen Datenbanksystemen als Erweiterung bereitgestellt. | Es gibt einen SQL-Standard zum Definieren einer Ansicht. |
Schaffung | Bei materialisierten Ansichten ist die Rowid anders. | Wenn eine Ansicht unter Verwendung einer beliebigen Tabelle erstellt wird, entspricht die Zeilenfolge der Ansicht der Zeile der ursprünglichen Tabelle. |
Verarbeitungsgeschwindigkeit | Eine materialisierte Ansicht lässt sich schnell verarbeiten. | Aufrufe werden langsam verarbeitet. |
Echtzeitdaten | Eine materialisierte Ansicht spiegelt keine Echtzeitdaten wider. Die Daten sind nur so aktuell wie beim letzten Aktualisieren der materialisierten Ansicht. | Die Ausgabe einer Ansicht wird im laufenden Betrieb erstellt; es zeigt Echtzeitdaten aus den abgefragten Basistabellen an. |
Effiziente Nutzung | Eine materialisierte Ansicht wird am besten verwendet, wenn Sie eine wirklich große Tabelle haben und die Leute häufig Aggregate darauf durchführen und Sie eine schnelle Reaktion benötigen. | Eine Ansicht wird am besten verwendet, wenn Sie die Implementierungsdetails einer komplexen Abfrage ausblenden oder den Zugriff auf eine Reihe von Zeilen/Spalten in den Basistabellen einschränken möchten. |
Ausführung | Eine materialisierte Ansicht ist eine ”im Voraus beantwortete” Abfrage – die Abfrage wird ausgeführt, wenn die materialisierte Ansicht aktualisiert wird. Das Ergebnis wird in der Datenbank gespeichert und die Abfrage durchsucht nur das Ergebnis. | Die SQL einer Ansicht wird zur Laufzeit ausgeführt. Die Ergebnisse werden aus den Basistabellen der View abgerufen, wenn die View abgefragt wird. |
DML-Befehle | DML-Befehle können in materialisierten Ansichten ausgeführt werden. | In einfachen Ansichten sind DML-Befehle nicht möglich, wenn sie mit mehreren Tabellen erstellt werden. |
Betreten | Materialisierte Ansichten sind effizient, wenn häufig auf die Ansicht zugegriffen wird. | Ansichten sind nützlich, wenn selten auf die Ansicht zugegriffen wird. |
Lesen Sie auch: Unterschied zwischen MongoDB und RDBMS