Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
ASE непонятно зачем при UNION ALL использует временные таблицы, как это убрать ?
|
|||
|---|---|---|---|
|
#18+
база - ASE 12.5.3 select вида Код: plaintext 1. 2. 3. 4. 5. 6. 7. выполняется в разы медленнее чем 2 отдельных count(*) по каждой из таблиц план запроса показал что данные вначале загоняются во временную таблицу и только потом делается агрегация. Как заставить сай выполнять такие запросы без участия временной таблицы.... в АСА, Оракле, Фарберде такой запрос выполняется без каких либо усилий. плн запроса который выдал мне ASE следущий Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. ^^^^^^ последняя строчка самая затратная и асолютно ненужная для агрегации по union all. Подскажите плиз как избежать использования временной таблицы??? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.05.2005, 19:51 |
|
||
|
ASE непонятно зачем при UNION ALL использует временные таблицы, как это убрать ?
|
|||
|---|---|---|---|
|
#18+
Может вот так получится : Код: plaintext 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.05.2005, 21:10 |
|
||
|
ASE непонятно зачем при UNION ALL использует временные таблицы, как это убрать ?
|
|||
|---|---|---|---|
|
#18+
_solo_ Код: plaintext 1. 2. 3. 4. 5. 6. 7. выполняется в разы медленнее чем 2 отдельных count(*) по каждой из таблиц план запроса показал что данные вначале загоняются во временную таблицу и только потом делается агрегация. Как заставить сай выполнять такие запросы без участия временной таблицы.... Для этого надо отказаться от использования таких VIEW. При работе с такими VIEW, т.е. со сложными VIEW, ASE будет всегда использовать стратегию материализации VIEW, т.е. формирования физического образа VIEW во временной таблице. Для реализации конкретно вот этого ASE скоро планирует сделать аналог partitioned tables Оракла - это должно быть в следующем релизе. _solo_ в АСА, Оракле, Фарберде такой запрос выполняется без каких либо усилий. Сомневаюсь... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.05.2005, 10:14 |
|
||
|
ASE непонятно зачем при UNION ALL использует временные таблицы, как это убрать ?
|
|||
|---|---|---|---|
|
#18+
MasterZiv Сомневаюсь... Разбиваем сомнения: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. Код: plaintext 1. 2. 3. 4. 5. 6. 7. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.05.2005, 11:05 |
|
||
|
ASE непонятно зачем при UNION ALL использует временные таблицы, как это убрать ?
|
|||
|---|---|---|---|
|
#18+
MasterZivСомневаюсь... сомневаться или нет ваше личное дело :) проверьте и отбросте свои сомнения. Я проверил такие селекты на базах Firebird 1.5.0.4306 , Oracle 9.2.0.5.0, ASA 8.0.2.3601 - время и затраты на выполнение двух отдельных агрегаций практически равны агрегации по юниону. MasterZiv Для этого надо отказаться от использования таких VIEW. При работе с такими VIEW, т.е. со сложными VIEW, ASE будет всегда использовать стратегию материализации VIEW, т.е. формирования физического образа VIEW во временной таблице. Для реализации конкретно вот этого ASE скоро планирует сделать аналог partitioned tables Оракла - это должно быть в следующем релизе. но мне _не нужен_ аналог _партишин_ из оракала в моем запросе(хотя и не помешалобы). У меня в запросе таблицы отличаются, у них есть общие колонки но есть и дополнительная информация специфическая для каждой из таблиц. Секционирование в чистом виде тут не проходит, таблицы похожи но не идентичны. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.05.2005, 11:28 |
|
||
|
ASE непонятно зачем при UNION ALL использует временные таблицы, как это убрать ?
|
|||
|---|---|---|---|
|
#18+
2_solo_ Бросьте эту затею с view. В ASE ими по возможности вообще не надо пользоваться. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.05.2005, 13:33 |
|
||
|
ASE непонятно зачем при UNION ALL использует временные таблицы, как это убрать ?
|
|||
|---|---|---|---|
|
#18+
Crip2_solo_ Бросьте эту затею с view. В ASE ими по возможности вообще не надо пользоваться. Вам это известно, а для меня это стало открытием. А бросать не хочется. Мне отчеты строить надо. С UNION ALL во VIEW все получалось бы более менее красиво. а теперь мне страшно становиться как часто мне придеться перечечатывать одни и тебе условия по разным запросам. а про случай внесения изменений в условия вообще думать не хочется. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.05.2005, 13:41 |
|
||
|
ASE непонятно зачем при UNION ALL использует временные таблицы, как это убрать ?
|
|||
|---|---|---|---|
|
#18+
Это потому, что думать раньше надо было.... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.05.2005, 14:36 |
|
||
|
ASE непонятно зачем при UNION ALL использует временные таблицы, как это убрать ?
|
|||
|---|---|---|---|
|
#18+
iLLerЭто потому, что думать раньше надо было.... а какието рациональные предложения от Вас поступят? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.05.2005, 15:19 |
|
||
|
ASE непонятно зачем при UNION ALL использует временные таблицы, как это убрать ?
|
|||
|---|---|---|---|
|
#18+
Каэшна будут. Все переделать. Пока не поздно, а даже если и поздно, все равно все переделать. Потому как делать выборки из view по динамически накладываемым условиям - плохо. Оптимизатор может не справится с ходом Вашей мысли. Индексы-то на view не поставишь?! И не материализуешь как в Оракле, поэтому вьюшки лучше использовать уже как готовую выборку. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.05.2005, 15:37 |
|
||
|
ASE непонятно зачем при UNION ALL использует временные таблицы, как это убрать ?
|
|||
|---|---|---|---|
|
#18+
_solo_база - ASE 12.5.3 select вида Код: plaintext 1. 2. 3. 4. 5. 6. 7. Подскажите плиз как избежать использования временной таблицы??? Почему ненужная? Union all устраняет дублирование записей. Составляется единый рекордсет и потом по сути сортируется и фильтруется. Можно попытаться сделать так: Код: plaintext 1. 2. 3. 4. 5. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.05.2005, 15:42 |
|
||
|
ASE непонятно зачем при UNION ALL использует временные таблицы, как это убрать ?
|
|||
|---|---|---|---|
|
#18+
Странно, а в АСА union all как раз не устраняет дублирование строк... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.05.2005, 15:55 |
|
||
|
ASE непонятно зачем при UNION ALL использует временные таблицы, как это убрать ?
|
|||
|---|---|---|---|
|
#18+
iLLerСтранно, а в АСА union all как раз не устраняет дублирование строк... BOLselect-statement UNION [ ALL | DISTINCT ] select-statement [ UNION [ ALL | DISTINCT ] select-statement ] ... [ ORDER BY integer [ ASC | DESC ], ... ] ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.05.2005, 16:02 |
|
||
|
ASE непонятно зачем при UNION ALL использует временные таблицы, как это убрать ?
|
|||
|---|---|---|---|
|
#18+
сори, не въехал :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.05.2005, 16:02 |
|
||
|
ASE непонятно зачем при UNION ALL использует временные таблицы, как это убрать ?
|
|||
|---|---|---|---|
|
#18+
iLLerСтранно, а в АСА union all как раз не устраняет дублирование строк... Эээ. Может я стормозил... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.05.2005, 16:04 |
|
||
|
ASE непонятно зачем при UNION ALL использует временные таблицы, как это убрать ?
|
|||
|---|---|---|---|
|
#18+
iLLerСтранно, а в АСА union all как раз не устраняет дублирование строк... Я тормоз. Да действительно все перепутал. Тогда правда неясно для чего временные таблицы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.05.2005, 16:05 |
|
||
|
ASE непонятно зачем при UNION ALL использует временные таблицы, как это убрать ?
|
|||
|---|---|---|---|
|
#18+
iLLer Оптимизатор может не справится с ходом Вашей мысли. Индексы-то на view не поставишь?! И не материализуешь как в Оракле, поэтому вьюшки лучше использовать уже как готовую выборку. да нормально справляется оптимизатор с индексами. Надо только вовремя статистику обновлять, в крайнем случае можно в конце запроса внаглую план запроса прицепить чтоб вообще проигнорировать на оптимизатор самого сайбеса. в том числе план будет планировать и саму вьюшку входящую в запрос. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.05.2005, 16:10 |
|
||
|
|

start [/forum/topic.php?fid=55&msg=33052177&tid=2013664]: |
0ms |
get settings: |
8ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
56ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
54ms |
get tp. blocked users: |
1ms |
| others: | 232ms |
| total: | 383ms |

| 0 / 0 |
