Achtung, mit diesem Funktionstypwird über eine zum Softwarepaket homogene Benutzerschnittstelle der Aufruf von Betriebssystemprozeduren erleichtert, die Datenbank-Admins vorbehalten sein sollten. Die Funktion sollte daher nur von Administratoren aufgerufen werden (in der Regel als DBAbezeichnet).
Um die Funktion sinnvoll verwenden zu können, muss der Benutzer über Vorkenntnisse über Datenbanken und deren Optimierung verfügen.
Ist dies nicht der Fall, kann die unsachgemäße Funktionsverwendung ernsthafte Performanceprobleme nach sich ziehen und die Sicherheit der Softwareverwendung beeinträchtigen.
Mit dieser Funktion können Datenbankstatistiken generiert und gelöscht werden.
Die Anzeige erfolgt in drei Registern: dem ersten ist die Liste der Tabellen mit ihrem jeweiligen Statistikstatus zu entnehmen, dem zweiten die Liste der Indizes mit ihrem jeweiligen Statistikstatus, dem dritten die Liste der mit dem Optimizer und der Statistikverwendung verbundenen Datenbankparameter.
Übersicht
Eigenschaften der verwendeten Datenbank.
Schließen
Felder
In diesem Register befinden sich die folgenden Felder :
| Datenbankname |
| Versionsnummer der Datenbank |
| Beschreibung der Datenbankversion |
Schließen
Übersicht
In diesem Register wird die Liste der Tabellen mit ihrem jeweiligen Statistikstatus angezeigt.
Die Statistiken können generiert und gelöscht werden:
Dabei werden jeweils sämtliche zu einer Tabelle generierten Statistiken mit ihren Indizes gelöscht.
Bei Generierung einer Statistik zu einer Tabelle werden keine Indexstatistiken mitgeneriert.
Schließen
Felder
In diesem Register befinden sich die folgenden Felder :
| Ermöglicht die Definition, ob die Zeile beim Erzeugen oder Löschen der Statistiken über die entsprechenden Buttons am Maskenende verarbeitet werden muss. |
| Name der Tabelle in der Datenbank |
| Gibt an, ob die gültigen Statistiken in der Datenbank erzeugt werden. |
| Datum der letzten Statistikanalyse. |
| Uhrzeit der letzten Statistikanalyse. |
Schließen
Symbol Aktionen
In Erfassungstabellen mit einer Auswahlmöglichkeit Ja / Nein pro Position können mit der Antwort Alle anderen: ja alle Positionen ab der aktuellen Position auf Ja gesetzt werden.
In Erfassungstabellen mit einer Auswahlmöglichkeit Ja / Nein pro Position können mit der Antwort Alle anderen: nein alle Positionen ab der aktuellen Position auf Nein gesetzt werden.
Aktualisierung der Anzeige der aktuellen Tabellenzeile
Statistikgenerierung für die aktuelle Tabellenzeile
Löschen der Statistiken über die aktuelle Tabellenzeile
Schließen
Übersicht
In diesem Register wird die Liste der Indizes mit ihrem jeweiligen Statistikstatus angezeigt.
Schließen
Felder
In diesem Register befinden sich die folgenden Felder :
| Ermöglicht die Definition, ob die Zeile beim Erzeugen oder Löschen der Statistiken über die entsprechenden Buttons am Maskenende verarbeitet werden muss. |
| Name der Tabelle in der Datenbank |
| Indexname in der Datenbank |
| Gibt an, ob die gültigen Statistiken in der Datenbank erzeugt werden. |
| Datum der letzten Statistikanalyse. |
| Uhrzeit der letzten Statistikanalyse. |
Schließen
Die Statistiken können generiert und gelöscht werden:
Symbol Aktionen
In Erfassungstabellen mit einer Auswahlmöglichkeit Ja / Nein pro Position können mit der Antwort Alle anderen: ja alle Positionen ab der aktuellen Position auf Ja gesetzt werden.
In Erfassungstabellen mit einer Auswahlmöglichkeit Ja / Nein pro Position können mit der Antwort Alle anderen: nein alle Positionen ab der aktuellen Position auf Nein gesetzt werden.
Aktualisierung der Anzeige der aktuellen Tabellenzeile
Statistikgenerierung für die aktuelle Tabellenzeile
Löschen der Statistiken über die aktuelle Tabellenzeile
Schließen
Übersicht
Dieses Register umfasst die Liste der mit dem Optimizer und der Statistikverwendung verbundenen Datenbankparameter
Schließen
Felder
In diesem Register befinden sich die folgenden Felder :
Tabelle Optimizer-Parameter
|   |
| Zeigt die Parameter an, die mit dem Optimizer und der Statistikverwendung verknüpft sind. Die dargestellten Parameter sind abhängig von der Oracle-Version. Diese Parameter können nicht über diese Funktion geändert werden. |
|   |
|   |
|   |
Schließen
Diese Werte können nicht geändert werden.
Symbol Aktionen
Felder
In diesem Register befinden sich die folgenden Felder :
Tabelle Optimizer-Parameter
|   |
| Zeigt die Parameter an, die mit dem Optimizer und der Statistikverwendung verknüpft sind. Die dargestellten Parameter sind abhängig von der Oracle-Version. Diese Parameter können nicht über diese Funktion geändert werden. |
|   |
|   |
|   |
Schließen
Mit diesem auch über das Tastaturkürzelerreichbaren Button wird die Registeranzeige aktualisiert. |
Generierung der Statistiken für die selektierten Zeilen in den Tabellen der Register Tabellen und Index. |
Löschen der Statistiken für die selektierten Zeilen in den Tabellen der Register Tabellen und Index. |
Dies hängt vom Anteil und Umfang der Datenänderungen in der Datenbank ab.
Die Statistiken zu einem Objekt werden hinfällig, wenn zu dem Objekt ein hohes Volumen an DML-Aktivitäten ausgeführt werden.
Um die Kohärenz zwischen den Dictionary-Statistiken und der Verteilung und dem Inhalt der Tabellenzeilen gewährleisten zu können, muss nach umfangreichen Einfüge- und Löschvorgängen eine neue Analyse durchgeführt werden. Enthält die Tabelle nach der Durchführung der Vorgänge eine große Anzahl von Zeilen und beziehen sich die Statistiken lediglich auf einen kleinen Teil dieser Zeilen, so ist der vom Optimizer aufgestellte Ausführungsplanung eventuell nicht optimal.
Die auf den Kosten basierende Optimierung wird durch den Parameter optimizer_mode deklariert, der drei Werte annehmen kann:
Die Statistikoptimierung wird durch den Wert RULE deklariert. In diesem Fall verwendet der Optimizer die Abfragesyntax, um den besten Ausführungsplan zu realisieren. Der Syntax-Optimizer wird in Oracle 10 nicht mehr unterstützt.
Es ist wichtig, die Statistiken für sämtliche Objekte in einem Schema zu generieren. Sind zu einer Select-Anweisung nur Teilstatistiken vorhanden, kann dies dazu führen, dass der Serverprozess Statistiken für Objekte ohne Statistiken auswertet. Solche Statistikproben werden während der Ausführung erzeugt und nicht permanent im Data-Dictionary gespeichert. Bei jeder Ausführung derselben Abfrage werden sie daher neu erzeugt.
Sämtliche Tabellen-, Index- und Statistikdaten werden aus Oracle-Tabellen und -Views direkt aus der Datenbank gelesen:
Die Statistikdaten entsprechen der Spalte LAST_ANALYZED der Oracle-Views USER_TABLES und USER_INDEXES.
Die Statistiken werden mithilfe des Oracle-Packages DBMS_STATS generiert.
Hierbei werden folgende Prozeduren verwendet: