
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
21.03.2003, 15:50
|
|||
|---|---|---|---|
|
|||
что скажет купечество об использовании временных таблиц |
|||
|
#18+
Концептуальный вопрос о временных таблицах в 8i: есть нужда на ходу создавать временные таблицы в процедурах , насколько я понимаю для этого приходится использовать динамический скл , но тогда в теле процедуры нельзя обращатся и выполнять ДМЛ операции над этой таблицей, тк на этапе компиляции такой таблицы не существует и нету параметра для принудительной компиляции типа FORCE как для вьюшек... т.е приходится городить заборы динамического скля в дальнейшем для работы с этими временными таблицами ,которые вроде бы призваны облегчить жизнь а не усложнять код ... в мсскле вон все просто решено- можно выполнять DDL прямо в теле процедуры ... в 9ке что нибудь изменилось к лучшему? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
21.03.2003, 16:02
|
|||
|---|---|---|---|
|
|||
что скажет купечество об использовании временных таблиц |
|||
|
#18+
причина создания на ходу временных таблиц - измеяющаяся структура? использовать collections не пробовали? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
21.03.2003, 16:09
|
|||
|---|---|---|---|
|
|||
что скажет купечество об использовании временных таблиц |
|||
|
#18+
не пробовал - может это действительно выход . но база типа DSS с множеством часто изменяемых запросов . временные таблицы создаются достаточно объемные сотни тысяч или неск миллионов строк , куда оракл разместит такие объемные коллекции? если диски то возникает проблема в скорости и невозможности построить индексы на такие структуры , если в память что это будет? PGA область , лардж пул? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
21.03.2003, 17:19
|
|||
|---|---|---|---|
что скажет купечество об использовании временных таблиц |
|||
|
#18+
Не забудьте: временные таблицы оракула (create global temporary table) хранятся во временных сегментах (и прокачиваются через PGA). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
21.03.2003, 17:23
|
|||
|---|---|---|---|
|
|||
что скажет купечество об использовании временных таблиц |
|||
|
#18+
Откажитесь от процедур и временных таблиц, и конструируйте сложные, часто меняющиеся запросы на приложении. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
21.03.2003, 19:29
|
|||
|---|---|---|---|
|
|||
что скажет купечество об использовании временных таблиц |
|||
|
#18+
to Chira: причина создания на ходу временных таблиц - просто неохота плодить на сервере много постоянных таблиц, редко используемых , для разных запросов ( почти adhoc) . то есть есть запрос выполняется раз в 2 месяца расчетчиками , логично создать таблицу в контексте пользователя выполнить расчет и забыть про эту таблицу, если оставлять постоянно такие таблицы то могут возникнуть проблемы с одновременной работой с такой таблицей нескольких расчетчиков - значит менять структуру таблицы , добавлять ненужные поля? временная таблица как раз должна решать такие проблемы ... to Skott Tiger: Вот и на металинке дан такой "ценный" совет . но запросы пишутся очень навороченные и не всегда оптимизатор с ними справляется лучшим образом , а где справляется то раз в год еще и меняет план запроса кардинально(CBO) , так что этап занимающий 2 минуты с каким нибудь хешджойном превращается в полчаса с нестедлупом ... выход или жестко закреплять план запроса хинтами -но надо обучать программистов ими пользоватся , это не всегда подходит ,или просто просить сохранять промежуточные результаты в временные таблицы , в этом случае от кодеров не требуется особого знания привередливого отпимизатора ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
21.03.2003, 20:29
|
|||
|---|---|---|---|
|
|||
что скажет купечество об использовании временных таблиц |
|||
|
#18+
а PL/SQL таблицы? создать глобальные типы обьектных таблиц в базе а в функциях обьявлять таблицы такого типа. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
21.03.2003, 22:30
|
|||
|---|---|---|---|
что скажет купечество об использовании временных таблиц |
|||
|
#18+
O ispolzovanii temporary tablespaces dliy zaprosov as-hos : 1) eto slogniye select ili temporary tables - nevagno - Oracle budet ispolzovat temporary segments. 2) pri primenenii global temporary tables (GTT) (lucshe transaction specific, chem session) Oracle budet ispolzovat OTDELNUYU MEMORY v PGA kotoraya OSVOBOGDAETSYA posle zaversheniya obpabotki zaprosa 3) v sluchae navorochennih select s sortirovkamy Oracle budet ispolzovat SORT_AREA kotoraya NE OSVOBOGDAETSYA posle zaversheniya sortirovki!!! posemu pri bolshom kolichestve sessiy PGA memory (dlia dedicated ili shared servers) prosto budet s'edena do tla (esly v celyah uvelichebniya proizvoditelnosty budet ustanovleno bolshoe znachenie parametra SORT_AREA_SIZE) chto kak pravilo harakterno dlya DSS system i mi potehonku vlezaem v swaping VNE AZAVISIMOSTY ISPOLZUEM MI SORT AREA SEYCHAS ILI NET. posemu i by sovetoval primenyt GTT a ne slognie zaprosy. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=52&tablet=1&tid=1991363]: |
0ms |
get settings: |
7ms |
get forum list: |
13ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
166ms |
get topic data: |
6ms |
get forum data: |
2ms |
get page messages: |
35ms |
get tp. blocked users: |
1ms |
| others: | 244ms |
| total: | 478ms |

| 0 / 0 |
