INFORMATICA Transformations Tutorial & Filter Transformation
⚡ Умное резюме
Преобразования в Informatica — это карта.ping Объекты, которые создают, изменяют или передают данные в целевой объект, а преобразование Filter является активным объектом, который удаляет все строки, не соответствующие одному условию фильтра.

Что такое трансформация?
В Informatica преобразования — это объекты, которые создают, изменяют или передают данные в определенные целевые структуры (таблицы, файлы или любые другие целевые объекты).
Цель преобразования данных в Informatica — модификация исходных данных в соответствии с требованиями целевой системы. Это также обеспечивает качество данных, загружаемых в целевую систему.
Informatica предоставляет различные преобразования для выполнения определенных функций.
Например, выполнение расчета налогов на основе исходных данных, операция очистки данных и т. д. В преобразованиях мы соединяем порты для передачи данных, а преобразование возвращает результат через выходные порты.
Классификация трансформации
Преобразования подразделяются на две категории: одни основаны на связности, другие — на изменении количества строк. Сначала рассмотрим преобразования, основанные на связности.
Типы трансформаций, основанные на связности
- Связанные преобразования
- Несвязанные трансформации
В Informatica, во время выполнения команды mappingПреобразования, связанные с другими преобразованиями, называются связными преобразованиями.
Например, Преобразование Source Qualifier Исходная таблица EMP подключена к преобразованию Filter для фильтрации сотрудников отдела.
Те преобразования, которые не связаны ни с какими другими преобразованиями, называются несвязными преобразованиями.
Их функциональность используется путем вызова внутри других преобразований, таких как преобразование выражений. Эти преобразования не являются частью конвейера обработки данных.
Связанные преобразования предпочтительны в тех случаях, когда для каждой входной строки вызывается преобразование или ожидается, что оно вернет значение. Например, для почтовых индексов в каждой строке преобразование должно возвращать название города.
Несвязанные преобразования полезны, когда их функциональность требуется лишь периодически или в зависимости от определенных условий. Например, для расчета налоговых данных, если налоговая сумма недоступна.
На приведенной ниже диаграмме обе пары категорий расположены рядом.
Типы преобразований в зависимости от изменения количества строк
- Активные преобразования
- Пассивные преобразования
Активными являются преобразования, которые изменяют строки данных и количество входных строк, передаваемых им. Например, если преобразование получает десять строк на входе и возвращает пятнадцать строк на выходе, то это активное преобразование. В активном преобразовании данные в строке также изменяются.
Пассивные преобразования — это преобразования, которые не изменяют количество входных строк. При пассивных преобразованиях количество входных и выходных строк остается неизменным, и изменяются только данные на уровне строк.
При пассивном преобразовании новые строки не создаются, а существующие строки не удаляются.
Ниже приводится список преобразований в информатике.
- Преобразование квалификатора источника
- Преобразование агрегатора
- Преобразование маршрутизатора
- Столярное преобразование
- Преобразование ранга
- Последовательность Generator трансформация
- Трансформация управления транзакциями
- Поиск и повторное использование преобразований
- Преобразование нормализатора
- Настройка производительности для трансформации
- Внешняя трансформация
- Преобразование выражений
Что такое преобразование фильтра?
Фильтрация — это активное преобразование, поскольку оно изменяет количество записей.
С помощью преобразования Filter мы можем фильтровать записи на основе условия фильтра.
Например, для загрузки записей сотрудников, у которых номер отдела равен 10, мы можем добавить преобразование «Фильтр» в карту.ping с условием фильтрации deptno=10. Таким образом, преобразование Filter пропустит только те записи, у которых deptno=10, а остальные будут отброшены.
Условие фильтрации по умолчанию — TRUE, поэтому вновь созданное преобразование Filter пропускает каждую строку до тех пор, пока не будет выполнено условие. Каждая строка, возвращающая FALSE, удаляется, и в журнал сессии записывается сообщение.
Как использовать преобразование фильтра
Шаг 1) Создайте картаping Имеющий источник «EMP» и цель «EMP_TARGET».
Шаг 2) Затем на картеping:
- Выберите меню «Преобразование».
- Выберите опцию «Создать».
Шаг 3) Затем в окне «Создать преобразование»:
- Выберите Преобразование фильтра из списка.
- Введите имя преобразования «fltr_deptno_10»
- Выберите опцию «Создать».
Шаг 4) Будет создано преобразование «Фильтр». В окне «Создать преобразование» нажмите кнопку «Готово».
Шаг 5) На картеping:
- Перетащите все столбцы Source Qualifier в преобразование Filter.
- Свяжите столбцы из преобразования «Фильтр» с целевой таблицей.
Шаг 6) Double— Щелкните по преобразованию «Фильтр», чтобы открыть его свойства, а затем:
- Выберите вкладку «Свойства».
- Нажмите на редактор условий фильтра.
Шаг 7) Затем в редакторе выражений условий фильтра:
- Введите условие фильтра – deptno=10
- Нажмите кнопку ОК
Шаг 8) Теперь снова в окне «Редактировать преобразования», на вкладке «Свойства» вы увидите условие фильтра. Нажмите кнопку «ОК».
Теперь сохраните карту.ping и выполнить его после создания Сессия и рабочийВ целевую таблицу будут загружены только записи с deptno=10.
Таким образом, вы можете фильтровать исходные записи с помощью преобразования «Фильтр».
Фильтр против маршрутизатора против фильтра-квалификатора источника
В Informatica можно удалить три объекта, причём выбор неправильного объекта приводит либо к снижению производительности, либо к ухудшению видимости отброшенных данных.
| объект | Как удаляются строки | Когда выбирать |
|---|---|---|
| Фильтрация преобразования | Одно условие на каждое преобразование. Строки, возвращающие FALSE, удаляются и отмечаются в журнале сессии. | Внутри карты действует одно простое правило.ping. |
| Преобразование маршрутизатора | Несколько условий группировки за один проход. Строки, не соответствующие ни одной группе, попадают в группу по умолчанию. | Строки необходимо разделить на несколько потоков, либо отклонённые строки должны быть сохранены. |
| Классификатор источника фильтр | Условие становится частью предложения WHERE SQL-запроса, считанного из реляционного источника. | Источник данных является реляционным, и нежелательные строки никогда не должны покидать базу данных. |
Один маршрутизатор считывает входящие данные один раз, в то время как несколько преобразований фильтра, проверяющих одни и те же входные данные, заставляют службу интеграции обрабатывать эти данные повторно для каждого из них. Фильтр Source Qualifier ограничивает то, что может быть использовано.tracОт источника отводится определенное количество данных, тогда как преобразование Filter ограничивает то, что отправляется в целевую систему.
Советы по повышению эффективности преобразования фильтров
Условие фильтрации оценивается для каждой строки, которая достигает преобразования, то есть для определения положения объекта на карте.ping оказывает прямое влияние на продолжительность сеанса.
- Разместите преобразование «Фильтр» как можно ближе к источнику, чтобы нежелательные строки никогда не прошли через последующие преобразования.
- Если источником является реляционная база данных, добавьте условие в SourceQualifier, поскольку фильтрация строк в базе данных происходит быстрее, чем служба интеграции.
- Условие должно быть простым. Сложное выражение можно перенести в преобразование «Выражение» и свести к одному флагу, который проверяет фильтр.
- Используйте один маршрутизатор вместо нескольких преобразований фильтра, проверяющих одни и те же входные данные, чтобы входящие данные считывались только один раз.
- Помните, что условие по умолчанию — TRUE, поэтому фильтр, оставленный без настроек, пропускает все данные и скрывает ошибку.
Поскольку каждая удаленная строка записывается в журнал сессии как сообщение, неожиданно пустой целевой объект обычно объясняется чтением этого журнала, а не повторным запуском сопоставления.ping.









