Parameter Volatile
- Dieses Thema hat 3 Antworten und 1 Teilnehmer, und wurde zuletzt aktualisiert vor 17 Jahre, 1 Monat von
Anonym.
-
AuthorPosts
-
28. Juli 2006 um 11:12 Uhr #2709
AnonymInaktivHallo zusammen,
nach Umstellen auf Version 8 haben wir jetzt in letzter Zeit verstärkt Performance Probleme. Trotz akueller, umfangreicher Runstats wird oft der falsche Index ausgewählt. Erschwerend kommt hinzu, das wir SAP einsetzen, also bei jeder Tabelle und jedem Index wird vorne der Mandant ‚mitgeschleppt‘. Dann gibt’s halt Pläne mit 1 matching column, dummerweise gibt meistens nur einen Mandanten pro System. Wir haben auch schon erfolgreich die SYSCOLDIST für Tabellen gelöscht, um andere Pläne zu erzwingen.Und jetzt bin auf den Parameter Volatile gestossen.
Der sorgt wohl dafür, dass von kostenbasierter auf regelbasierte Optimierung umgestellt wird. SAP selber liefert einen Report für migrierte Systeme mit dem ca. 500 Tabellen umgesetzt werden.Und tatsächlich nach Einstellen dieses Tabellenparameters gibt es für unsere Ausreißer wirklich bessere Pläne.
Trotzdem hab‘ ich ein ungutes Gefühl bei der Sache.
Gibt es da evt. noch irgendwelche Nebenwirkungen ?
Habt Ihr da schon Erfahrungen gemacht ?
Oder ganz ketzerisch gefragt: sollte man nicht einfach alle Tabelle auf Volatile setzten ?bis denn
Kay
28. Juli 2006 um 11:47 Uhr #3106
AnonymInaktivHallo Kay,
wir haben jetzt schon ca. 1 Jahr für SAP die Datenbank DB2 V8 auf dem Host laufen.
Obwohl wir über 70 Systeme damit betreiben, hatten wir bis jetzt keine schlechten Erfahrungen mit dem von SAP gelieferten Report RSDB2VOLATILE gemacht.
Wir lassen den einmal pro Woche in der Nacht laufen, damit neue Tabellen ebenfalls dieses Attribut bekommen. Es kann auf keinen Fall schaden. 🙂
31. Juli 2006 um 7:17 Uhr #3386
AnonymInaktivHallo Kay,
die Option volatile zeigt dem Optimizer an, das es sich hier um eine stark schwankende Tabelle handelt. Meines Wissens werden damit Index-Zugriffe bevorzugt, bzw. Prefetch nicht so stark genutzt.
Volatile könnte sich demnach für Massendaten negativ auswirken (z. B. große Cursor oder SQLs in denen große Datenmengen qualifiziert werden).
In Zusammenhang mit SAP habe ich da keine Erfahrungen, aber ansonsten versuche ich es für Tabellen zu nutzen, die ständig in Bewegung sind (Pulsare).MfG Rolf
31. Juli 2006 um 9:29 Uhr #3561
AnonymInaktivMoin, moin,
den Report von SAP setze ich immer nur einmal ein, wenn ich ein System von V7 nach V8 migriert habe. Danach gehe ich davon aus, das SAP dann die Tabellen richtig anlegt 😉Das VOLATILE haben wir jetzt mal am Wochenende für eine Tabelle gesetzt, um ein Online-Statement wieder auf die Geschwindigkeit von V7 zu setzen, klappt auch wunderbar.
Aaaber dann hat es uns ein anderes Statement verrissen, mit volatile über 4 Stunden, nach zurücksetzen wieder 100 sec.
Schade, wär ja auch zu schön gewesen.geht das Suchen eben weiter
Kay
-
AuthorPosts
You must be logged in to reply to this topic.