|
|
|
Порядок расположения колонок составного индекса
|
|||
|---|---|---|---|
|
#18+
fortnet, Имеет ли смысл секционирование уникального индекса? (в том ответе подспудно имеется в виду и корректировка самих запросов - добавление предикатов с ключами секционирования) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.02.2017, 12:52 |
|
||
|
Порядок расположения колонок составного индекса
|
|||
|---|---|---|---|
|
#18+
--Eugene--, ясно - у вас идея фикс о локальном уникальном индексе, об уникальности которого знаете только вы. Иначе говоря, вы путаете высокоселективный индекс с уникальным. Уникальный индекс для партицированных таблиц всегда должен быть глобальным . Если это не так - см. пост выше о проблемах вставки. Поэтому использовать столбец , на котором он построен в связке с другими столбцами для построения локального индекса бессмысленно. Собственно поэтому и был задан вопрос о примере . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.02.2017, 14:53 |
|
||
|
Порядок расположения колонок составного индекса
|
|||
|---|---|---|---|
|
#18+
Ну, если только уникальный ключ не является ключем секционирования И еще раз аффтару: озвучь запросы, для которых ты хочешь создать новый индекс ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.02.2017, 15:02 |
|
||
|
Порядок расположения колонок составного индекса
|
|||
|---|---|---|---|
|
#18+
Вячеслав Любомудров, Да, соглашусь, с этими ограничениями можно построить уникальный индекс партицированный. И да, собственно, зачем эта уникальность? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.02.2017, 15:14 |
|
||
|
Порядок расположения колонок составного индекса
|
|||
|---|---|---|---|
|
#18+
Не понял Вот есть у меня куча табличек, которые разбиты по ID (ID в формате дата+sequence -- фиксированной длины) -- я легко делю исторические секции по году/полугоду И PK работает и архивные секции легко нарезаются ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.02.2017, 15:26 |
|
||
|
Порядок расположения колонок составного индекса
|
|||
|---|---|---|---|
|
#18+
Вячеслав Любомудров, именно. А, уважаемый fortnet, запросы простые. Например: Код: plsql 1. - оно с локальным индексом, включающим все три колонки (а первые две - ключи секционирования) будет работать на порядки быстрее в данном случае, поскольку используются "горячие данные", коих 5% от всего объема. И таких запросов (использующих is_hot = 'Y' - более 90% от всей массы). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.02.2017, 16:32 |
|
||
|
Порядок расположения колонок составного индекса
|
|||
|---|---|---|---|
|
#18+
Я вообще-то против, что в первичный ключ добавлять еще и ключ секционирования, чтоб сделать его индекс локальным На мой взгляд -- в этом случае лучше глобальный индекс ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.02.2017, 16:36 |
|
||
|
Порядок расположения колонок составного индекса
|
|||
|---|---|---|---|
|
#18+
Вячеслав Любомудров, Вот если бы можно было партицировать индекс по колонкам, не перечисленным в нем - это был бы идеальный вариант. А так я вынужден создавать локальные индексы, поскольку необходимо партицировать их списками.. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.02.2017, 16:54 |
|
||
|
Порядок расположения колонок составного индекса
|
|||
|---|---|---|---|
|
#18+
--Eugene--Вячеслав Любомудров, именно. А, уважаемый fortnet, запросы простые. Например: Код: plsql 1. - оно с локальным индексом, включающим все три колонки (а первые две - ключи секционирования) будет работать на порядки быстрее в данном случае, поскольку используются "горячие данные", коих 5% от всего объема. И таких запросов (использующих is_hot = 'Y' - более 90% от всей массы). А oracle , конечно, без индекса по is_hot будет по всем партициям лазить, даже прочитав условие в предикате is_hot = 'Y' и только с индексом сообразит куда смотреть? Ключ секционирования - это что по вашему? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2017, 16:58 |
|
||
|
Порядок расположения колонок составного индекса
|
|||
|---|---|---|---|
|
#18+
fortnet, прошу прощения, запросы не такие уж и простые, как теперь смотрю.. Код: plsql 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2017, 18:45 |
|
||
|
Порядок расположения колонок составного индекса
|
|||
|---|---|---|---|
|
#18+
--Eugene--, Нет разницы. Этот запрос не сильно отличается от предыдущего. Создайте простой локальный (или глобальный партицированный - хотя по запросу не видно, что он нужен) индекс и смотрите планы. И зачем хинтовать такие простые запросы. Для данного запроса нужно только, что бы он выбрал требуемую партицию на основе предиката по is_hot in ('Y', :is_hot) ( и возможно подпартицию по bank_id ) и применил к ней локальный индекс для поиска по trade_id . Всё. Незачем городить огород с уникальностью. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.02.2017, 10:09 |
|
||
|
Порядок расположения колонок составного индекса
|
|||
|---|---|---|---|
|
#18+
fortnetИ зачем хинтовать такие простые запросыЗатем что если не хинтовать, оракл сваливается на уникальный (нелокальный) индекс: С хинтом Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. Без хинта Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.02.2017, 12:17 |
|
||
|
Порядок расположения колонок составного индекса
|
|||
|---|---|---|---|
|
#18+
--Eugene--Может показаться, что попугаи те же, только вот на практике с локальным в разы быстрее. Ты бы хоть пример придумал, который покажет твое быстрее ) Какой толк от примера на разных наборах данных, да еще с одинаковыми оценками? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.02.2017, 13:01 |
|
||
|
Порядок расположения колонок составного индекса
|
|||
|---|---|---|---|
|
#18+
AlexFF__|, Счего наборы данных разные? таблица та же запрос тот же ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.02.2017, 13:23 |
|
||
|
Порядок расположения колонок составного индекса
|
|||
|---|---|---|---|
|
#18+
--Eugene--, DDL по таблице приложите. Запутали совсем индексами. Какие , что ... Непонятно ничего. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.02.2017, 13:50 |
|
||
|
Порядок расположения колонок составного индекса
|
|||
|---|---|---|---|
|
#18+
fortnet, DDL Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.02.2017, 14:23 |
|
||
|
Порядок расположения колонок составного индекса
|
|||
|---|---|---|---|
|
#18+
Прошу прощения, Код: plsql 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.02.2017, 14:52 |
|
||
|
Порядок расположения колонок составного индекса
|
|||
|---|---|---|---|
|
#18+
--Eugene--Прошу прощения, Код: plsql 1. при вашем способе разбиения таблицы, чепуха какая-то, имхо. (никогда не имев дела с партиционированием, планируя локальный индекс, я скромно делил бы) условия в запросе сорта Код: plsql 1. 2. 3. 4. 5. 6. на такие, с которыми работаем механизм выбора партиции и такие, с которыми работает локальный индекс у вас в одно ведущей партиции не более одного значения be_id - значит это условие для механизма выбора раздела: [quot --Eugene--]Прошу прощения, Код: plsql 1. 2. 3. 4. итог: Код: plsql 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.02.2017, 15:56 |
|
||
|
Порядок расположения колонок составного индекса
|
|||
|---|---|---|---|
|
#18+
booby, знаток.. Код: plaintext 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.02.2017, 16:15 |
|
||
|
Порядок расположения колонок составного индекса
|
|||
|---|---|---|---|
|
#18+
--Eugene--, если все запросы идут по одной из партиций, то локальный индекс лучше, т.к. локальные индексы будут совсем крошечные и у них будет маленькая высота (blevel) Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. локальные индексы по горячим данным имеют высоту = 0, глобальный же высоту = 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.02.2017, 16:24 |
|
||
|
Порядок расположения колонок составного индекса
|
|||
|---|---|---|---|
|
#18+
pihelлокальные индексы по горячим данным имеют высоту = 0, глобальный же высоту = 1.чево? где тут глобальный индекс вообще? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.02.2017, 01:54 |
|
||
|
Порядок расположения колонок составного индекса
|
|||
|---|---|---|---|
|
#18+
--Eugene--pihelлокальные индексы по горячим данным имеют высоту = 0, глобальный же высоту = 1.чево? где тут глобальный индекс вообще? SYS_C00425187 глобальный индекс от TRADE_ID NUMBER PRIMARY KEY, ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.02.2017, 12:20 |
|
||
|
Порядок расположения колонок составного индекса
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.02.2017, 11:58 |
|
||
|
Порядок расположения колонок составного индекса
|
|||
|---|---|---|---|
|
#18+
pihel, ппц. до последнего времени считал, что Глобальными могут быть только Партицированные индексы. ан нет зачем их называть Глобальными, если они Непартицированные и - соответственно - не могут быть локальными?? от ихней номенклатуры голова пухнет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.02.2017, 12:06 |
|
||
|
|

start [/forum/topic.php?fid=52&msg=39406755&tid=1886399]: |
0ms |
get settings: |
9ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
171ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
83ms |
get tp. blocked users: |
1ms |
| others: | 203ms |
| total: | 504ms |

| 0 / 0 |
