Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (Deutsch) » SQL Anywhere Server - SQL-Benutzerhandbuch » Abfrageverarbeitung » Abfragen optimieren und ausführen » Performance durch materialisierte Ansichten verbessern

 

Materialisierte Ansichten definieren

Beim Design Ihrer Anwendung sollten Sie in Betracht ziehen, materialisierte Ansichten für häufig ausgeführte kostenträchtige Abfragen oder kostenträchtige Teile Ihrer Abfragen zu definieren, etwa wenn intensive Aggregat- oder Join-Vorgänge durchgeführt werden. Materialisierte Ansichten dienen der Performance-Verbesserungen in Umgebungen, in denen Folgendes zutrifft:

  • Die Datenbank ist groß.

  • Häufige Abfragen führen zu wiederholter Aggregation und zu Join-Vorgängen für große Datenmengen.

  • Änderungen der zugrunde liegenden Daten kommen nur selten vor.

  • Der Zugriff auf aktuelle Daten ist nicht von entscheidender Bedeutung.

Sie brauchen Ihre Abfragen nicht zu ändern, um die Vorteile materialisierter Ansichten zu nutzen. Materialisierte Ansichten sind beispielsweise ideal für den Einsatz von Data Warehouse-Anwendungen geeignet, bei denen sich die zugrunde liegenden Daten nicht oft ändern.

Der Optimierer führt eine Liste von materialisierten Ansichten, die bei der Optimierung als Kandidaten für das teilweise oder vollständige Erfüllen einer Abfrage in Betracht kommen. Falls der Optimierer eine mögliche materialisierte Ansicht findet, die eine Abfrage teilweise oder vollständig erfüllt, schließt er die Ansicht in die Empfehlungen ein, die er für die Enumerationsphase der Optimierung abgibt, wo der beste Plan aufgrund der Kosten ermittelt wird. Das Verfahren, mit dem der Optimierer übereinstimmende Ansichten für Abfragen sucht, wird als Ansichtenübereinstimmung bezeichnet. Bevor eine materialisierte Ansicht vom Optimierer in Betracht gezogen wird, muss sie bestimmte Bedingungen erfüllen. Es gibt daher keine Garantie, dass eine materialisierte Ansicht vom Optimierer verwendet wird, solange sie nicht explizit von der Abfrage referenziert wird. Sie können jedoch dafür sorgen, dass die Bedingungen erfüllt werden, sodass die Ansicht in Betracht kommt.

Falls der Optimierer feststellt, dass die Verwendung materialisierter Ansichten erlaubt ist, wird jeder Kandidat einer materialisierten Ansicht geprüft. Eine materialisierte Ansicht wird für die Verwendung durch den Algorithmus für die Ansichtenübereinstimmung in Betracht gezogen, wenn folgende Bedingungen erfüllt sind:

Falls die materialisierte Ansicht die obigen Kriterien erfüllt und der Abfrage ganz oder teilweise entspricht, nimmt der Algorithmus für die Ansichtenübereinstimmung die materialisierte Ansicht in seine Empfehlungen für die Enumerationsphase der Optimierung auf, wenn der beste Plan aufgrund der Kosten ausgewählt wird. Dies bedeutet jedoch nicht, dass die materialisierte Ansicht im endgültigen Ausführungsplan tatsächlich benutzt wird. Materialisierte Ansichten, die zum Berechnen des Ergebnisses einer Abfrage geeignet erscheinen, werden möglicherweise trotzdem nicht benutzt, wenn ein anderer Plan, der die materialisierte Ansicht nicht verwendet, als preiswerter geschätzt wird.