Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
18.09.2019, 09:24
|
|||
---|---|---|---|
|
|||
Тормоза пустых таблиц. |
|||
#18+
Приветствую! Вопрос про скорость чтения пустых таблиц. Имеется БД ORACLE 11, большая таблица, размер в табличном пространстве более одного гига. В процессе работы с таблицей производится большое количество операций insert и delete. После завершения рабочего процесса в таблице 0 записей, но простой селект выполняется очень долго ~ 10 минут и возвращает пустоту. Если посмотреть на размер таблицы в табличном пространстве то она всё так же занимает более гига. Как правильно поступать в такой ситуации? Как ускорить чтение пустых таблиц? На данный момент есть вариант с truncate, но как быть с таблицами в которых есть некоторое количество нужных записей? Есть ли различия в способах ускорения партицированных и не партицированных таблиц? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
18.09.2019, 09:42
|
|||
---|---|---|---|
Тормоза пустых таблиц. |
|||
#18+
sas_home, Стратегий разных полно. Самая простая - упомянутый вами truncate. Если в сегменте что-то остается, можно пробовать move, shrink space [compact] (в обоих случаях надо не забыть про индексы). В вашем случае (таблица полностью очищается после завршения процесса) можно еще подумать об использовании временных таблиц, тогда ничего делать вообще не нужно. Но тут смотрите ограничения временных таблиц и логику вашего процесса. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
18.09.2019, 09:45
|
|||
---|---|---|---|
|
|||
Тормоза пустых таблиц. |
|||
#18+
sas_homeПосле завершения рабочего процесса в таблице 0 записей, но простой селект выполняется очень долго ~ 10 минут и возвращает пустоту.Может попробовать насильно статистику для таблицы собрать. Хм... Это какая то рабочая таблица ? sas_homeЕсть ли различия в способах ускорения партицированных и не партицированных таблиц?Если она у тебя пустая к концу работы, то зачем ее секционировать ? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
18.09.2019, 10:01
|
|||
---|---|---|---|
Тормоза пустых таблиц. |
|||
#18+
sas_homeно как быть с таблицами в которых есть некоторое количество нужных записей?Индексный доступ. Но главное - это работающие мозги. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
18.09.2019, 10:24
|
|||
---|---|---|---|
|
|||
Тормоза пустых таблиц. |
|||
#18+
Владимир САsas_homeПосле завершения рабочего процесса в таблице 0 записей, но простой селект выполняется очень долго ~ 10 минут и возвращает пустоту.Может попробовать насильно статистику для таблицы собрать. Хм... Это какая то рабочая таблица ? Да, это рабочая таблица. sas_homeЕсть ли различия в способах ускорения партицированных и не партицированных таблиц?Если она у тебя пустая к концу работы, то зачем ее секционировать ? Я про то, что тормоза могут быть у разного типа таблиц. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
18.09.2019, 12:51
|
|||
---|---|---|---|
|
|||
Тормоза пустых таблиц. |
|||
#18+
sas_homeразличия в способах ускорения партицированных и не партицированных таблиц? Некорректно поставленный вопрос замыливает решения. В указанной ситуации следует говорить об избежании полного сканирования пустых сегментов значительного объема. Отсюда и спектр возможных подходов: - доступ по индексу, если применимо (индексный доступ замедлит рабочий процесс, требующий обработки значительной части записей таблицы) - в случае partitioned таблиц - выделение под новый процесс нового раздела, пустующие разделы можно убивать. - использование временных таблиц - следует обратить внимание на физическое размещение temp, в котором создана временная таблица. - наилучшее, на мой взгляд, решение: реорганизация процесса с целью избавления от операций delete/update. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
|
start [/forum/topic.php?fid=52&mobile=1&tid=1882066]: |
0ms |
get settings: |
11ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
27ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
42ms |
get tp. blocked users: |
1ms |
others: | 270ms |
total: | 387ms |
0 / 0 |