Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
СУБД Oracle / Лекции / Лек_ORAC / LCD / Хранение БД.doc
Скачиваний:
50
Добавлен:
16.04.2013
Размер:
173.06 Кб
Скачать

Установки по умолчанию для хранения объектов

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

Установки по умолчанию для пользователей

Как было показано ранее, для каждого пользователя можно установить табличную область по умолчанию и временную табличную область. Когда пользователь создает новый объект базы данных и не указывает для него табличную область явно, Oracleсохраняет новый объект в табличной области по умолчанию для этого пользователя. Во временной табличной области пользователяOracle, по мере необходимости, выделяет временное рабочее пространство для его SQL-операторов.

Установки по умолчанию для табличных областей

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

  • Размеров начального и последующих экстентов сегмента

  • Минимального и максимального числа экстентов в сегменте

  • Коэффициента возрастания последующих экстентов сегмента.

Например, следующий оператор изменяет установки для экстентов табличной области, заданные по умолчанию:

ALTER TABLESPACE sales_data_1

DEFAULT STORAGE (

Initial 100k

NEXT 100K

MINEXTENTS 3

MAXEXTENTS 100

PCTINCREASE 0);

Уникальность хранения мультимедийных данных

Когда в таблице содержится столбец, имеющий тип данных LOB(например,CLOB,BLOBилиNCLOB) или BFILE, тогда в каждой строке таблицы хранится лишь небольшой локатор (locator). Это указатель местонахождения реальных данных LOB или BFILE для строки. Что касается столбцов CLOB,BLOBи NCLOB, то локатор LOB определяет место хранения информации в пределах базы данных; для столбцов BFILE он указывает на внешние файлы, управляемые операционной системой сервера. Понятие локаторов LOB и BFILE проиллюстрировано на рис. $.11.

Рис. $.11 показывает, что характеристики хранения полей LOB не за­висят от характеристик хранения базовой таблицы. Это упрощает процесс обращения к данным LOB, занимающим обычно большие области диска. В этом примере все не-LOB- и нe-BFILE- данные для каждой строки таблицы хранятся вместе в одной табличной области, данные столбца LOB- в другой табличной области, а данные столбца BFILE - в файловой системе сервера. При этом основные табличные и связанные с ними мультимедийные данные распределяются для хранения среди разных физических областей (например, дисководов), что снижает конкуренцию при доступе к диску и повышает общую производительность системы.

Дополнительные сведения о локаторах lob

Для обеспечения эффективного доступа к LOB-даппым указатели столбца CLOBилиBLOBхранятся в соответствующем индексе В-дерева. При этомOracleможет быстро обращаться к указанным порциям (chunks) конкретных LOB-данных столбца.

Разделение данных

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

  • Таблица вырастает настолько, что для работы с ней нужно время, превышающее разрешенный интервал.

  • Для обработки запроса необходимо выполнить полное сканирование очень большой таблицы. Пока происходит считывание множества блоков данных указанной таблицы, падает производительность приложения и системы.

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

Чтобы уменьшить вероятность возникновения проблем такого рода, в Oracle8 поддерживается разделение таблиц и индексов.