Кэш словаря

Кэш словаря в базе данных Oracle DatabaseВ оперативные журнальные файлы записываются все изменения пользовательских и системных объектов. До того как изменения записываются в журнал, Oracle хранит их в области журнального кэша. Например, элементы журнала переписываются из кэша в оперативные журнальные файлы, когда кэш заполняется или когда транзакция фиксируется. Элементы журнала для нескольких транзакций могут быть записаны в журнальный файл за одно обращение к диску.

Фоновый процесс LGWR - единственный процесс, который переписывает элементы журнала из кэша в оперативные журнальные файлы.

Область разделяемого пула SGA имеет два основных компонента: область SQL (она же Библиотечный кэш  - library cache) и кэш словаря. Изменять размер этих двух компонентов можно, только изменяя размер всей области разделяемого пула.

Оператор SQL, переданный для выполнения серверу базы данных, должен быть подвергнут грамматическому разбору, прежде чем он может быть выполнен. Область SQL в SGA содержит данные привязки, временные буферы, дерево разбора и план выполнения для каждого оператора SQL, переданного серверу базы данных. Так как область разделяемого пула имеет фиксированный размер, возможно, в ней не поместится весь набор операторов, которые выполнены с момента запуска экземпляра; Oracle может удалять некоторые операторы, с целью освобождения места для других.

Если пользователь выполняет оператор SQL, последний занимает память в области SQL (библиотечном кэше). Если другой пользователь выполняет точно такой же оператор с теми же объектами, Oracle не производит повторно разбор второго оператора, поскольку дерево разбора и план выполнения уже есть в области SQL. Область SQL также используется для хранения в разобранной, скомпилированной форме блоков PL/SQL, которые могут разделяться пользовательскими процессами одного экземпляра.

Кэш словаря в области разделяемого пула содержит фрагменты системных таблиц Oracle. Системные таблицы Oracle называются "словарем данных" Oracle. Словарь данных — набор таблиц, размешенных в файлах базы данных, и так как Oracle часто обращается к этим файлам, создастся отдельная область памяти, чтобы избежать дискового ввода/вывода.

Кэш хранит подмножество данных из словаря данных. Он загружается начальным набором элементов при запуске экземпляра и затем, по мере того как требуется дальнейшая информация, заполняется из словаря данных базы данных. Кэш содержит информацию обо всех пользователях, таблицах и других объектах, структурах и т.д.

Кэш словаря данных увеличивается, занимая при необходимости большую часть области разделяемого пула, но размер области разделяемого пула остается фиксированным.

Вас заинтересует / Intresting for you:

Базы данных Oracle: что нужно ...
Базы данных Oracle: что нужно ... 64966 просмотров Ирина Светлова Thu, 24 Jun 2021, 20:01:45
Oracle Personal Edition
Oracle Personal Edition 5970 просмотров Надин Tue, 21 Nov 2017, 13:32:12
Oracle изменения изменений!
Oracle изменения изменений! 3114 просмотров Stas Belkov Tue, 21 Nov 2017, 13:18:46
Разница между базой данных и э...
Разница между базой данных и э... 3272 просмотров Александров Попков Tue, 21 Nov 2017, 13:18:46
Войдите чтобы комментировать