На производительность Teradata влияют
В запросе нет объединения, это простой запрос с двумя различными значениями. Но он потребляет более 9 тыс. Процессоров.
Я взял необходимую статистику, но не смог уменьшить процессор. пожалуйста, предложите несколько хороших способов уменьшить нагрузку на процессор
Подскажите, пожалуйста, как лучше всего уменьшить нагрузку на процессор?
1 ответ
Я думаю, что целевая таблица является таблицей SET, поэтому ваш запрос требует много ресурсов ЦП (удаление дублирующихся строк).
1) Проверьте ваш запрос на выборку в таблице MULTISET.
insert into multiset_table
select count(distinct col1) from source_table.
И я считаю, что ваш основной индекс искажен, причина высокой нагрузки на процессор.
2) Убедитесь, что ваш основной индекс уникален.
select hashamp(hashbucket(hashrow(<primary index columns>))), count(*) (bigint) cnt from target_table group by 1 order by 2 desc;
Если столбец cnt распределен неравномерно, измените первичный индекс таблицы на более уникальные столбцы.
Только 2 вещи могут привести к медленному выполнению слияния: 1) Целевой таблицей является таблица SET. 2) Первичный индекс целевой таблицы сильно искажен.