Sonntag, Mai 12, 2013

Details zum Hakan Factor

Vor zwei Jahren habe ich hier ein paar Bemerkungen zum Hakan Factor und zur MINIMIZE RECORDS_PER_BLOCK Option notiert. Jetzt hat Jonathan Lewis in seinem Blog ein paar der Informationen ergänzt, die mir damals fehlten: zunächst liefert er eine Procedure show_hakan, die die SPARE1-Angabe in TAB$ auswertet. Darüber hinaus bestätigt er die Beobachtung, dass man den Hakan Factor über MINIMIZE RECORDS_PER_BLOCK nicht dazu bringen kann, die Satzanzahl im Block auf 1 zu reduzieren, was anscheinend daran liegt, dass der Factor immer um 1 niedriger ist als die angestrebte Satzanzahl im Block und nicht auf 0 gesetzt werden kann. Anlass für den Artikel des Herrn Lewis war dabei ein Thread im OTN Forum, in dem Matthias Rogel auf einen Artikel von Karsten Spang hinwies, der noch ein paar zusätzliche Aussagen zum Thema enthält:
  • Unterschiede im Hakan Factor sind eine wahrscheinliche Ursache für "ORA-14642: Bitmap index mismatch" beim Partition Exchange.
  • da der Hakan Factor die Anzahl der rows pro Block angibt, muss er für alle Indizes der Tabellenpartitionen identisch sein, um bit Operationen (AND/OR) zu ermöglichen.
  • mit ALTER TABLE ... MINIMIZE RECORDS_PER_BLOCK wird der aktueller aktuelle Maximalwert für die Sätze in einem Block bestimmt und als Limit für folgende INSERTs gesetzt. Das Kommando kann nur ausgeführt werden, wenn noch keine bitmap indizes für die Tabelle angelegt sind.
  • Zur Interpretation von SPARE1 liefert Karsten Spang folgende Informationen:
    • "Lower bits (at least 12, perhaps as many as 15): Håkan factor"
    • "0×08000: MINIMIZE RECORDS_PER_BLOCK in effect"
    • "0×10000: Seems to mean that the Håkan factor has been fixed higher than the value calculated from non-null columns."
    • "0×20000: Table compression is enabled"
  • mit Hilfe von Event 14529 kann man dafür sorgen, dass eine CTAS-Operation eine neue Tabelle mit dem Hakan Factor der Quell-Tabelle anlegt, was zur Lösung von Problemen mit ORA-14642 beitragen kann.
Da die angesprochenen Details nicht offiziell dokumentiert sind, handelt es sich natürlich bei allen Angaben um - begründete - Vermutungen.

Keine Kommentare:

Kommentar veröffentlichen