2014-04-23 6 views
5

Darf ich den Unterschied für diese beiden Elemente wissen?Materialized View vs View

Daten in materialized view können aktualisiert werden, aber so wie view, wenn wir Select-Anweisung verwenden. Warum nicht einfach view anstelle von materialized view verwenden?

Antwort

9

Wenn Sie benötigen Leistung auf Daten, die materialisierte Ansichten sind besser, aber Ihre Daten werden älter als in einer Standardansicht auf dem neuesten Stand zu die Sekunde, um nicht brauchen.

Während Materialized view Oracle Erstellung erstellt zwei Objekte, eine Tabelle, wo die Ergebnisse tatsächlich materialisiert sind, und eine Ansicht, die materialisierte alle Metadaten hat (die Abfrage, die Attribute, etc.).

Aber während View Erstellung Oracle schafft nur ein Objekt, das die Metadaten alle (die Abfrage, die Attribute, usw.)

+0

Meine Haupt Tabelle enthält einige Millionen von Daten zusammenfassend sind diese Master-Tabellen genannt. Wenn ich Materialized View statt der regulären Ansicht verwende, werden die Daten dupliziert x2? –

+0

@TanSiongZhe Ich weiß nicht, was Sie mit x2 meinen, aber natürlich wird es Daten wieder im Gegensatz zu Ansicht speichern. –

+0

Sorry von x2 Ich meine mal zwei. Nehmen wir an, meine Datenbank enthält derzeit 6 Millionen Daten, mit MV werden es 12 Millionen Daten? –

2

Sie verwenden hauptsächlich aus Performancegründen materialisierte Ansichten.

Nach der Oracle docs:

eine materialisierte Ansicht eine Replik eines Ziel Master von einem einzigen Punkt in der Zeit ist.

Eine reguläre Ansicht lädt Daten "on demand" und kann "automatisch" geändert werden, wenn sich die zugrunde liegenden Daten ändern.

1

Unterschied zwischen View vs materialisierten Ansicht in der Datenbank

hat Basierend auf unserem Verständnis von View und Materialized View, sehen wir, einige kurze Unterschiede zwischen ihnen:

1) Erster Unterschied sein Zwischen Ansicht und materialisierter Ansicht ist Folgendes zu sehen: In Views-Abfrageergebnis wird nicht auf der Festplatte oder in der Datenbank gespeichert, aber Materialisierte Ansicht ermöglicht das Speichern von Abfrageergebnissen auf Festplatte oder Tabelle.

2) Ein weiterer Unterschied zwischen View vs Ansicht ist, materialisiert, dass, wenn wir Ansicht unter Verwendung eines beliebigen Tabelle erstellen, Rowid Sicht als Original Tabelle gleich ist, aber im Falle von materialisierten Ansicht Rowid ist anders.

3) Ein weiterer Unterschied zwischen Ansicht und materialisierten Ansicht in der Datenbank ist, dass im Fall Ansicht wir immer aktuelle Daten erhalten, aber im Fall von materialisierten Ansichten müssen wir die Ansicht aktualisieren für die neuesten Daten zu erhalten.

4) Die Leistung der Ansicht ist geringer als die materialisierte Ansicht.

5) Dies ist die Fortsetzung der ersten Differenz zwischen Ansicht und materialisierten Ansicht, Bei seiner nur die logischen Sicht auf Tabelle keine separate Kopie der Tabelle anzeigen, aber bei materialisierten Ansicht wir physisch separate Kopie der Tabelle erhalten

6) Letzte Differenz zwischen view vs materialisierten Ansicht ist, dass, im Falle von materialisierten Ansicht brauchen wir zusätzliche Trigger oder eine automatische Methode so , dass wir MV aktualisiert halten können, ist dies nicht für Ansichten erforderlich in Datenbank.

0

Eine materialisierte Ansicht ist ein Datenbankobjekt, das die Ergebnisse einer Abfrage enthält. Sie sind lokale Kopien von Daten, die sich entfernt befinden, oder sie werden verwendet, um Übersichtstabellen basierend auf Aggregationen der Daten einer Tabelle zu erstellen.

Materialisierte Ansichten, die Daten basierend auf Remote-Tabellen speichern, werden auch als Snapshots bezeichnet.

Eine materialisierte Ansicht kann Tabellen, Ansichten und andere materialisierte Ansichten abfragen.

http://www.oraappdata.com/2016/04/materialized-view.html