Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Только одна операция по изменению размера SGA может осуществляться единовременно!






 

Для указания размера стандартного (Default) кэша данных появился новый параметр – DB_CACHE_SIZE (вместо ранее использовавшегося DB_BLOCK_BUFFERS). Теперь размер кэша данных указывается в байтах.

Помимо стандартного пула (Default) кэша данных в СУБД Oracle 10gсуществует возможность определить еще 2 дополнительных пула, которые не являются подмножествами стандартного кэша данных и выделяются отдельно:

 

- для сохранения данных на «постоянное место жительства» в кэше (keep buffer pool, размер указывается параметром инициализации DB_KEEP_CACHE_SIZE);

- для немедленного освобождения блоков пула после окончания использования блоков данных (recycle buffer pool, размер указывается параметром инициализации DB_RECYCLE_CACHE_SIZE).

 

Информацию о пулах кэша данных можно получить из представления V$BUFFER_POOL.

 

Пример указания параметров db_keep_cache_size и db_recycle_cache_size:

 

SQL> alter system set db_keep_cache_size = 10m;

 

System altered.

 

SQL> alter system set db_recycle_cache_size = 10m;

 

System altered.

 

Теперь выполним запрос к представлению V$BUFFER_POOL:

 

SQL> select id, name, block_size, current_size, target_size, buffers

2 from v$buffer_pool;

 

ID NAME BLOCK_SIZE CURRENT_SIZE TARGET_SIZE BUFFERS

---------- -------------------- ---------- ------------ ----------- ----------

1 KEEP 8192 16 16 2002

2 RECYCLE 8192 16 16 2002

3 DEFAULT 8192 24 24 3003

 

Отметим, что размер пулов округлен до кратного грануле (в данном случае гранула равна 8М), причем в сторону увеличения.

Как и в предыдущих версиях, данные в кэше размещаются блоками. Размер первичного блока БД задается параметром DB_BLOCK_SIZE (он всегда используется для табличного пространства SYSTEM и временных табличных пространств). В СУБД Oracle 10gпоявилась возможность создавать табличные пространства (и, предварительно, соответствующие им пулы в кэше данных), используя нестандартный размер блока данных. Имеется возможность поддерживать до 5 разных размеров блока данных: 2 Кб, 4 Кб, 8Кб, 16 Кб, 32 Кб.

Прежде чем создавать объекты с нестандартным размером блока данных, отличным от первичного, необходимо описать область в кэше данных, где будут обрабатываться блоки этих данных. Для этого существует 5 параметров, значение которых по умолчанию равно 0:

DB_2K_CACHE_SIZE – для объектов с блоком данных размером в 2 Кб.

DB_4K_CACHE_SIZE – для объектов с блоком данных размером в 4 Кб.

DB_8K_CACHE_SIZE – для объектов с блоком данных размером в 8 Кб.

DB_16K_CACHE_SIZE – для объектов с блоком данных размером в 16 Кб.

DB_32K_CACHE_SIZE – для объектов с блоком данных размером в 32 Кб.

 

Все 5 параметров не могут одновременно иметь ненулевое значение, потому что одно из значений будет соответствовать стандартному блоку данных (DB_BLOCK_SIZE).

Оставленные для совместимости параметры DB_BLOCK_BUFFERS, BUFFER_POOL_KEEP, BUFFER_POOL_RECYCLE не могут быть использованы совместно с новыми параметрами для поддержки динамической модели SGA.

Для определения размера разделяемого пула существует параметр инициализации SHARED_POOL_SIZE.

Для определения размера большого пула существует параметр инициализации LARGE_POOL_SIZE.

Представление словаря данных V$SGA_DYNAMIC_COMPONENTS отображает информацию об уже известных нам динамических компонентах SGA, включая сводку по операциям увеличения/уменьшения областей SGA, в т.ч. и размер гранулы.

Представление V$SGA_DYNAMIC_FREE_MEMORY в единственном столбце дает информацию о свободном месте, доступном для расширения, т.е. о нераспределенных гранулах.

Представление V$SGA_CURRENT_RESIZE_OPS содержит информацию о текущей операции изменения размера динамической области SGA.

Представление V$SGA_RESIZE_OPS содержит информацию о последних 100 операциях изменения размера динамических областей SGA, кроме текущей.

 

Для управления размером области PGA в СУБД Oracle 10gрекомендуется использовать параметр PGA_AGGREGATE_TARGET. АБД необходимо только установить значение этого параметра, которое означает максимальную область памяти, которая может быть отведена под PGA, и сервер будет автоматически управлять областями памяти в PGA.

Вместе с PGA_AGGREGATE_TARGET используется еще один параметр – WORKAREA_SIZE_POLICY, который определяет режим работы с рабочими областями в PGA. Если PGA_AGGREGATE_TARGET имеет некоторое значение, WORKAREA_SIZE_POLICY выставляется в AUTO, что является рекомендуемым. При этом использование параметров SORT_AREA_SIZE, HASH_AREA_SIZE, BITMAP_MERGE_AREA_SIZE, CREATE_BITMAP_AREA_SIZE, становится неактуальным.

При необходимости, значение PGA_AGGREGATE_TARGET и WORKAREA_SIZE_POLICY можно изменить с помощью команды ALTER SYSTEM.

Представление V$PGASTAT содержит информацию о текущем состоянии PGA.

 

 







© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.