Параметры для экстентов
Размещение табличных областей
Параметры хранения объектов
В Oracle можно достаточно тонко управлять характеристиками хранения информации в сегментах базы данных..
При создании нового объекта хранения данных, например таблицы, кластера данных, индекса, моментального снимка или сегмента отката, можно явно указать табличную область, в которой нужно создать сегмент такого объекта.
Oracle выполняет такой запрос при условии, что пользователь имеет необходимую квоту в табличной области и привилегии, требуемые для создания объекта. Если при создании таблицы, кластера данных, индекса или моментального снимка табличная область не указывается, Oracle создает сегмент для объекта в табличной области, установленной в учетных сведениях пользователя как табличная область по умолчанию. Если при создании сегмента отката табличная область не указывается, Oracle создает его в табличной области SYSTEM.
При создании нового объекта хранения данных можно задавать различные установки, с учетом которых для сегмента этого объекта выделяются экстенты:
• Число экстентов, выделяемых при создании сегмента. При создании нового сегмента Oracle выделяет по крайней мере один экстент.
• Максимальное число экстентов, выделяемых при создании сегмента.
• Размер экстентов сегмента. Можно установить размер начального и последующих экстентов сегмента, а также коэффициент возрастания, применяемый перед выделением сегменту новых экстентов.
Например, с помощью следующего оператора CREATE TABLE можно управлять выделением экстентов сегменту данных для новой таблицы CUSTOMERS:
CREATE TABLE sales.customers
(... описания столбцов ...}
STORAGE (
INITIAL 500K
NEXT 500K
MINEXTENTS 1
MAXEXTENTS 10
PCTINCREASE 50 );
Когда создается новый сегмент данных для таблицы CUSTOMERS, сервер выделяет ему один начальный экстент размером 500K (INITIAL). Когда этот экстент заполняется, Oracle выделяет следующий экстент размером 500K (NEXT) и изменяет размер последующего экстента сегмента до 750К (т.е. 500K увеличивается на 50% (PCTINCREASE)). Когда требуется новый экстент, Oracle выделяет его (размером 750К) и изменяет размер следующего экстента сегмента до 1125К (т.е. 750К увеличивается на 50%). Такое выделение экстентов продолжается до десятого экстента (MAXEXTENTS), что является пределом для числа экстентов в сегменте. Естественно, можно изменять параметры хранения объектов, например для того; чтобы увеличить максимальное число экстентов для объекта.
Для параметра MAXEXTENTS можно установить значение UNLIMITED. При этом сегменту будет выделяться неограниченное число экстентов.