|
|
|
Зачем смотрит в таблицу
|
|||
|---|---|---|---|
|
#18+
1. Есть двадцать идентичных по структуре таблиц mytable1, mytable2...mytable20 2. Есть запрос (упрощенно): Код: plsql 1. 3. Для каждой таблицы из 20-ти этот запрос отрабатывает быстро и достает данные только из индекса (индекс по функции) 4. Теперь эти 20 таблиц объединяем во вьюшке через union all И далаем этот же запрос, но к вьюшке: План показывает для каждой таблицы обращение к индексу и потом table access by rowid. (при том, что еще раз: если делать этот же запрос отдельно к каждой таблице, то table access by rowed нет, - только Index range scan). Или план в девелопере отличается от реального, или когда много таблиц, то план не всегда может подхватиться оптимальный (сталкивался когда вообще выбирает iffs). Или в каком-то случае может быть обращение к таблице, если все данные есть в индексе? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2017, 13:19 |
|
||
|
Зачем смотрит в таблицу
|
|||
|---|---|---|---|
|
#18+
Тест-кейс вопроизести сможешь? Или хотя бы метаданные по существующим таблицам и планы существующих запросов показать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2017, 13:31 |
|
||
|
|

start [/forum/topic.php?fid=52&gotonew=1&tid=1886426]: |
0ms |
get settings: |
10ms |
get forum list: |
26ms |
check forum access: |
5ms |
check topic access: |
5ms |
track hit: |
200ms |
get topic data: |
9ms |
get first new msg: |
6ms |
get forum data: |
3ms |
get page messages: |
40ms |
get tp. blocked users: |
1ms |
| others: | 238ms |
| total: | 543ms |

| 0 / 0 |
