Разделы

Оценить
(0 голоса)

Начиная с Огас1е8, для таблиц поддерживается горизонтальное разделение данных на разделы. Горизонтальное разделение означает, что таблицы могут быть расщеплены на несколько табличных областей, а строки размещаются в одной из табличных областей в соответствии со значением одного или нескольких столбцов. И хотя можно непосредственно обращаться и выполнять, независимо администрирование каждого раздела, Oracle позволяет трактовать таблицу прозрачным образом в виде единого объекта. При выполнении запроса оптимизатор СУБД Oracle либо автоматически ссылается ко всей таблице, либо игнорирует разделы, не содержащие данных, относящихся к запросу. При горизонтальном разделении Oracle использует partitions - разделы, основанные на диапазонах данных (разделение, или разбивка, по диапазонам).

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

create table sales (product_id varchar2(20) primary key, customer_id number(10), quantity number(8), unit_price number)10,2), month_no number(2)) partition by range (month_no, region)

(partition jan values less than (2, C) tablespace ts_01, partition feb values less than (3, E) tablespace ts_02, partition dec values less than (maxvalues, maxvalues) tablespace ts_12);

Табличные области с ts_01 no ts_12 могут быть расслоены (расщеплены) по всем доступным дискам, гарантируя при этом, что все диски будут активными, даже если большая часть табличных областей исключается оптимизатором из запроса.

Системная табличная область
Parallel Query Option (PQO)
Степень параллелизма
Сканирование таблиц с сортировкой
Другие возможности параллелизма

Добавить комментарий


Защитный код
Обновить