Database Reference
In-Depth Information
3.2.3.2 db file scattered read
Dieses Warteereignis erfolgt beim Lesen von mehreren Datenblöcken am Stück (multi-
block read). Die Anzahl der am Stück gelesenen Datenblöcke wird durch den Parameter
db_multiblock_read_count festgelegt. Normalerweise wird es auf dieses Warteereignis bei
Full Table Scans und bei Fast Full Index Scans gewartet. Die Tuning-Maßnahmen kann
man dem obigen Abschnitt entnehmen.
3.2.3.3 buffer busy waits
Eine Session wartet auf das Warteereignis „buffer busy waits“, wenn sie auf einen Block im
Buffer Cache zugreift, der sich in einem „busy“ Zustand befindet.
Für die Reduzierung der Wartezeit auf dieses Ereignis ist es wichtig zu klären, welche
Block-Klassen bei diesem Warten am meisten betroffen sind. Das kann man in der View
V$WAITSTAT ermitteln:
VHOHFWFODVVEORFNFODVVFRXQWWRWDOZDLWVWLPHWLPHZDLWHGIURPYZDLWVWDWRUGHUE\
WLPHGHVFFRXQWGHVF
Wartet ein System beispielsweise auf die Blöcke der Klasse „segment_header“, kann es ein
Zeichen für eine Konkurrenz um die „free lists“ bzw. um die „free list groups“ sein, wenn
das jeweilige Segment in einem MSSM (manually segment storage management) Table-
space liegt. In diesem Fall hilft entweder eine Erhöhung von „free lists“ bzw. von „free list
groups“ für dieses Segment oder das Anlegen dieses Segments im ASSM Tablespace. In der
Oracle Version 10.1 entstand ein neues Warteereignis „read by other session“, das in den
früheren Versionen zu dem Warteereignis „buffer busy waits“ zählte. Dieses Warteereignis
ist im Abschn. 3.2.3.3 beschrieben.
Diese Wartezeit kann auftreten, wenn eine Session einen Datenblock aus dem Buffer
Cache liest, während eine andere Session diesen Datenblock ändert. In Abb.  3.2 stimmen
die Kurven für die Wartezeiten auf „enq: TX -index contention“ und auf „buffer busy
waits“ fast überein, was vermuten lässt, dass diese Wartezeiten bei denselben verändernden
Operationen entstanden sind.
Nach der Reduzierung der Konkurrenz um die Index-Blöcke durch Hash-Partitionie-
rung des jeweiligen Indexes sind die Wartezeiten sowohl auf „enq: TX - index contention“
als auch auf „buffer busy waits“ zurückgegangen.
3.2.3.3.1 Ein Fall mit der Wartestatistik „buffer busy waits“
Ein System hatte gravierende Wartezustände für „buffer busy waits“. Die Ermittlung der
Block-Klassen erbrachte Folgendes:
Search WWH ::




Custom Search