Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Oracle Новый топик    Ответить
 Сonvert index to partitioned index  [new]
publexus
Member

Откуда: Москва
Сообщений: 955
Можно ли сделать обычный индекс партиционированным без полной перестройки?
В частности, например: есть индекс со значениями 1..999, надо что бы старые значения остались в одной партиции, и добавить вторую со значениями 1000..MAXVALUE, что бы новые вставки производились уже в новую партицию.
11 июл 11, 16:35    [10956925]     Ответить | Цитировать Сообщить модератору
 Re: Сonvert index to partitioned index  [new]
Сергей Арсеньев
Member

Откуда:
Сообщений: 4118
publexus,

А таблица то партиционирована?
11 июл 11, 16:51    [10957025]     Ответить | Цитировать Сообщить модератору
 Re: Сonvert index to partitioned index  [new]
pravednik
Member

Откуда: Jacksonville, FL
Сообщений: 16268
publexus,

нет, не получится
11 июл 11, 16:52    [10957032]     Ответить | Цитировать Сообщить модератору
 Re: Сonvert index to partitioned index  [new]
publexus
Member

Откуда: Москва
Сообщений: 955
Сергей Арсеньев
publexus,

А таблица то партиционирована?

нет, партиционировать надо только индекс.
11 июл 11, 16:56    [10957056]     Ответить | Цитировать Сообщить модератору
 Re: Сonvert index to partitioned index  [new]
Сергей Арсеньев
Member

Откуда:
Сообщений: 4118
publexus,

Может проще вместе?
11 июл 11, 17:35    [10957389]     Ответить | Цитировать Сообщить модератору
 Re: Сonvert index to partitioned index  [new]
publexus
Member

Откуда: Москва
Сообщений: 955
Сергей Арсеньев
publexus,

Может проще вместе?

В таблице около 2 миллиардов строк и постоянно производятся новые вставки. По трассировке видно, что затраты на вставку в таблицу незначительны по сравнению со вставкой в индекс. Тем более все запросы обращаются только к индексу и не трогают таблицу. Удалять, архивировать и т.д. данные не предполагается, доступ к ним приблизительно равномерный. Поэтому посчитал, что достаточно будет партиционировать индекс, чтобы вставки производились быстрее, а саму таблицу разбивать смысла нет.
11 июл 11, 17:59    [10957549]     Ответить | Цитировать Сообщить модератору
 Re: Сonvert index to partitioned index  [new]
orawish
Member

Откуда: Гадюкино-2 (City)
Сообщений: 15487
publexus
Сергей Арсеньев
publexus,

Может проще вместе?

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

как это? саму таблицу разбивать смысла нет
?
я фигею, дорогая редакция..

а м.б. вам реверсивный индекс нужен?
11 июл 11, 18:38    [10957799]     Ответить | Цитировать Сообщить модератору
 Re: Сonvert index to partitioned index  [new]
Филарет
Member

Откуда:
Сообщений: 539
publexus
Сергей Арсеньев
publexus,

А таблица то партиционирована?

нет, партиционировать надо только индекс.

так это ж невозможно ?!?

По трассировке видно, что затраты на вставку в таблицу незначительны по сравнению со вставкой в индекс.

какие именно ожидания наблюдаем?
12 июл 11, 02:29    [10959255]     Ответить | Цитировать Сообщить модератору
 Re: Сonvert index to partitioned index  [new]
Филарет
Member

Откуда:
Сообщений: 539
publexus
Сергей Арсеньев
publexus,

А таблица то партиционирована?

нет, партиционировать надо только индекс.

так это ж невозможно ?!?

По трассировке видно, что затраты на вставку в таблицу незначительны по сравнению со вставкой в индекс.

какие именно ожидания наблюдаем?
12 июл 11, 02:29    [10959256]     Ответить | Цитировать Сообщить модератору
 Re: Сonvert index to partitioned index  [new]
Вячеслав Любомудров
Member

Откуда: Владивосток
Сообщений: 18487
Филарет
publexus
пропущено...

нет, партиционировать надо только индекс.

так это ж невозможно ?!?
tst> create table t1(a number);

Table created.

tst> create index t1_idx on t1(a) global partition by range(a)
  2  (partition p1 values less than (10),
  3   partition p2 values less than (maxvalue));

Index created.

tst> select partition_name, segment_type from user_segments where segment_name='T1_IDX';

PARTITION_NAME                 SEGMENT_TYPE
------------------------------ ------------------
P1                             INDEX PARTITION
P2                             INDEX PARTITION
12 июл 11, 02:38    [10959260]     Ответить | Цитировать Сообщить модератору
 Re: Сonvert index to partitioned index  [new]
Филарет
Member

Откуда:
Сообщений: 539
упс...

а я попытался создать локальный, получил ora-14016 и успокоился. Нужно было хоть ошибку прочитать:
14016, 00000, "underlying table of a LOCAL partitioned index must be partitioned"
// *Cause: User attempted to create a LOCAL partitioned index on a
// non-partitioned table which is illegal. Only GLOBAL indices
// (partitioned or otherwise) may be created on a
// non-partitioned table.
// *Action: Correct the statement and reenter

12 июл 11, 02:50    [10959267]     Ответить | Цитировать Сообщить модератору
Все форумы / Oracle Ответить