Тюнинг в Teradata (группа по) - PullRequest
       4

Тюнинг в Teradata (группа по)

0 голосов
/ 27 сентября 2011

Я пытаюсь настроить запрос в Teradata. Это довольно большой, поэтому я даю ниже схемы:

SEL column_1, column_2......column_20, sum(column_21), sum(column_22),.....sum(column_30)
from table_a a
inner join table_b b
on conditions...
group by column_1, ...,column_20;

Я пытаюсь настроить это. Это удар по производительности в группе. Таблицы A и B огромны (более 2 миллиардов записей).

Я попробовал следующие варианты, но ни один из них не улучшил производительность:

1) Собраны все необходимые характеристики

2) Создан СО для столбцов из таблицы А и В

3) Создан AJI для столбцов и сумм из таблиц A и B

4) Создал SI в каждой из таблиц для столбцов, входящих в группу, по.

Может кто-нибудь подсказать, как действовать дальше?

1 Ответ

2 голосов
/ 16 февраля 2012

Очень сложно что-либо сказать, не имея подробной информации о:

  • запросе (всегда ли они одинаковы или всегда ГДЕ всегда)
  • структура Aи B (первичные индексы / разбиение)
  • план выполнения
  • журнал выполнения (чтобы увидеть, где узкое место)

Но если мы предположим, что этот единственный запросто же самое каждый раз, когда AJI создается и используется во время выполнения, тогда единственное улучшение, о котором я могу подумать, будет пытаться настроить первичный индекс JI, поэтому его распределение по усилителю будет максимально равномерным

(Кстати, если используется AJI, то шаги 2 и 4 будут пустой тратой вашего времени и места в дБ)

...