Агрегация служб SSIS - нет детализации в группе - PullRequest
1 голос
/ 14 апреля 2020

У меня есть таблица SQL, которую я хотел бы объединить в SSIS по уникальному строковому уровню. Другие столбцы, которые я легко СУММА, AVG, но столбец Имя строки, который я sh сгруппировать по, не дает мне эту опцию в детализации. Только считать вариант, который не то, что мне нужно, конечно. В чем может быть проблема? У кого-нибудь был такой опыт? Илана

enter image description here

1 Ответ

0 голосов
/ 14 апреля 2020

Я считаю, что проблема в том, что вы выбираете GROUP BY для всех столбцов в Aggregate Transformation, и он пытается заставить вас что-то агрегировать.

Если вы на самом деле просто пытаетесь GROUP BY всех столбцов, скажем, устранить дубликаты, вы получите гораздо лучшую производительность, используя SELECT DISTINCT в своем источнике данных.

Aggregate Transformation - это полностью блокирующее преобразование, то есть необходимо извлечь весь набор данных в память, выполнить SELECT DISTINCT в памяти, а затем разрешить очищенному набору данных пройти в назначение, в результате чего две полные копии данных в памяти. Часто сервер SSIS недостаточно загружен для такой нагрузки.

Используя SELECT DISTINCT в своем источнике данных, тяжелая работа ложится на сервер базы данных, который гораздо лучше оснащен для выполнения этой работы. В качестве бонуса это сократит объем данных, передаваемых по сети в пакет, поэтому вы увеличите скорость в обеих операциях.

...