Преобразование агрегатора в Informatica на примере
Что такое трансформация агрегатора?
Преобразование агрегатора — это активное преобразование, которое используется для выполнения агрегатных вычислений, таких как сумма, среднее значение и т. д.
Например, если вы хотите рассчитать сумму зарплат всех сотрудников отдела, мы можем использовать преобразование агрегатора.
Агрегатные операции выполняются над группой строк, поэтому для хранения всех этих записей и выполнения вычислений требуется временный заполнитель.
Для этого используется кэш-память агрегатора. Это временная основная память, которая выделяется агрегатору преобразования для выполнения таких операций.
В этом примере мы рассчитаем сумму заработной платы по отделам. Для этого нам нужен новый столбец для хранения этой суммы. Итак, первым делом подготовим новую колонку.
Шаг 1) Создайте новую целевую таблицу базы данных, например, «sum_sal_deptwise», используя скрипт ниже. Вы увидите, что новая целевая таблица базы данных создана под Target папку на следующем шаге.
Загрузите указанный выше файл Create_table_sal_deptwise.txt.
Шаг 2) Создайте новое сопоставление «m_ sum_sal_deptwise».
Чтобы создать новое сопоставление, нам нужны исходная таблица (EMP) и целевая таблица (sum_sal_deptwise) в дизайнере сопоставлений, для этого нам нужно
- Импортируйте целевую таблицу sum_sal_deptwise в сопоставление.
- Импортируйте исходную таблицу «emp».
Шаг 3) В картографии
- Из издания Классификатор источника, удалите столбцы empno, ename, job, mgr, Hiredate и comm, оставив только столбцы deptno и sal.
- Создайте новое преобразование агрегатора, используя меню панели инструментов, как показано на снимке экрана. При нажатии на значок агрегатора будет создано новое преобразование агрегатора.
Шаг 4) Перетащите столбцы SAL и DEPTNO из квалификатора источника (SQ_EMP) в преобразование агрегатора.
Шаг 5) Double нажмите на преобразование агрегатора, чтобы открыть его свойства, а затем
- Добавьте новый порт в преобразование
- Переименуйте имя порта в SUM_SAL.
- Измените тип данных этого нового порта на двойной.
- Сделайте этот порт выходным портом, установив флажок выходного порта.
- Нажмите на вариант выражения
Шаг 6) В окне выражения
- Добавьте выражение-сумма(SAL), вам нужно будет написать это выражение.
- Нажмите кнопку «ОК», это вернет окно редактирования преобразования.
Шаг 7) В окне редактирования преобразования выберите опцию «Группировать по», установив флажок напротив столбца «Номер отдела» и нажав «ОК» (выбрав «Группировать по» напротив «Номер отдела», мы указываем Informatica сгруппировать зарплаты по номеру отдела).
Шаг 8) Свяжите столбцы deptno и sum_sal из преобразования агрегатора с целевой таблицей.
Теперь сохраните отображение и выполните его после создания нового сеанса для этого сопоставления. Целевая таблица будет содержать сумму заработной платы по отделам. Таким образом, мы можем использовать преобразование агрегатора для расчета совокупных результатов.