Защелки - это не что иное, как специализированные механизмы блокировки, используемые Oracle для перевода в последовательный режим доступа к коллективным структурам данных в SGA. В SGA имеется множество структур, доступ к которым пытаются одновременно получить несколько процессов. Для предотвращения одновременного доступа или модификации таких структур несколькими процессами Oracle использует защелки. Защелки отличаются от блокировок в том смысле, что блокировки налагаются на длительное время и совместно используются несколькими процессами. Большая часть защелок не может применяться совместно (начиная с Oracle 7.3 и для более поздних версий защелки копирования redo на некоторых платформах можно использовать совместно). Если процесс приобретает какую-либо защелку, все остальные процессы, которым для выполнения идентичных операций требуется та же защелка, вынуждены ждать, пока ее освободит предыдущий процесс. Легко предположить, что имеется несколько защелок, каждая из которых защищает набор структур данных в SGA.
Задав запрос к представлению вы получите полный список
всех время, прошедшее с момента появления Oracle 7.3 до появле-
ния OracleSi, количество защелок увеличилось примерно с 50 до 150.
Из всего множества защелок настраивать можно всего несколько. Подавляющее большинство защелок недоступно, так что не теряйте своего времени и энергии на то, чтобы их отслеживать. Как уже говорилось, если настроить приложения, ввод/вывод и различные компоненты базы данных, не будет необходимости заботиться о конкуренции за защелки. Практически всякий раз
оказывается, что проблемы конкуренции за защелки всего лишь являются симптомами гораздо более серьезных проблем - неоптимизированных приложений. Начните с решения этих задач.
АБД должен знать, что делать с настраиваемыми защелками, пока не возникло проблем. Следование принципам по большей части позволяет уберечься от забот, связанных с конкуренцией за защелки, и перейти к реальным делам, связанным с деградацией производительности настраиваемой базы данных.
Вот те защелки, о которых нельзя забывать:
cache buffers Iru chain, redo copy
иcache buffers chains.
Перечисленные ниже параметры инициализации можно установить проактивно, чтобы облегчить проблемы с конкуренцией за эти защелки.< Предыдущая | Следующая > |
---|