Bei der manuellen Durchführung einer Datenbankdiagnose gibt es die Option "Erweiterte Diagnose". Diese Option wird häufig einfach eingeschaltet, ohne die Auswirkungen der Option zu kennen.
Sinnvoll ist die erweiterte Diagnose nur in ganz wenigen Fällen, in denen die Standarddiagnose keine Fehler anzeigt und es Probleme beim Datensatzzugriff über Schlüssel gibt (beispielsweise "Schlüssel ohne Datensatz"), die sich durch eine Reorganisation nicht beheben lassen.
Während die normale Diagnose die Sortierfolge in Bäumen nur pro Segment prüft, verifiziert die erweiterte Diagnose die korrekte Reihenfolge über den gesamten Baum. Dazu müssen die Baumsegmente allerdings auch in Sortierfolge aus der Datenbank gelesesen werden, wodurch praktisch die gesamte Datenbank mit Random-Zugriffen gelesen wird.
Die Standarddiagnose liest den Großteil der Datenbank dagegen sequentiell, erst am Ende des Durchlaufs werden beim Test der Baumknoten Random-Zugriffe notwendig (das ergibt den Effekt, das die Diagnose so ab 95% plötzlich langsamer wird).
Das unterschiedliche Leseverhalten beider Diagnosevarianten führt zu einem enormen Unterschied in der Laufzeit. Die erweiterte Variante benötigt ein mehrfaches an Zeit, die Dauer beträgt mindestens ein fünffaches der normalen Diagnose, in ungünstigen Fällen kann es auch zwanzigmal so lange dauern (oder noch länger…).
Daher sollte diese Option im Regelfall NICHT verwendet werden.
Eine Antwort
Siehste mal, wieder was gelernt… Danke