Підручник з трансформацій INFORMATICA та перетворення фільтрів
⚡ Розумний підсумок
Трансформації в Informatica – це картаping об'єкти, які створюють, змінюють або передають дані до цільового об'єкта, а перетворення Фільтр – це активний об'єкт, який видаляє кожен рядок, що не відповідає одній умові фільтра.

Що таке трансформація?
Трансформації в Informatica – це об'єкти, які створюють, змінюють або передають дані до визначених цільових структур (таблиць, файлів або будь-якого іншого цільового об'єкта).
Мета перетворення в Informatica полягає в модифікації вихідних даних відповідно до вимог цільової системи. Це також забезпечує якість даних, що завантажуються в ціль.
Informatica забезпечує різні перетворення для виконання певних функцій.
Наприклад, виконання розрахунку податку на основі вихідних даних, операція очищення даних тощо. У перетвореннях ми підключаємо порти для передачі даних, а перетворення повертає вихід через вихідні порти.
Класифікація трансформації
Трансформації класифікуються на дві категорії: одна ґрунтується на зв'язності, а інша — на зміні кількості рядків. Спочатку ми розглянемо трансформації, засновані на зв'язності.
Типи трансформації на основі зв'язності
- Зв'язані перетворення
- Беззв'язкові перетворення
В Informatica, під час картографіїpingПеретворення, які пов'язані з іншими перетвореннями, називаються зв'язаними перетвореннями.
Наприклад, Трансформація кваліфікатора джерела Вихідна таблиця EMP підключена до перетворення Filter для фільтрації співробітників відділу.
Ті перетворення, які не пов’язані ні з якими іншими перетвореннями, називаються незв’язаними перетвореннями.
Їхня функціональність використовується шляхом виклику всередині інших перетворень, таких як перетворення Expression. Ці перетворення не є частиною конвеєра.
Зв'язані перетворення є кращими, коли для кожного вхідного рядка викликається перетворення або очікується повернення значення. Наприклад, для поштових індексів у кожному рядку перетворення повертає назву міста.
Незв'язані перетворення корисні, коли їхня функціональність потрібна лише періодично або за певних умов. Наприклад, обчислення податкових даних, якщо значення податку недоступне.
На діаграмі нижче обидві пари категорій розташовані поруч.
Типи трансформацій на основі зміни кількості рядків
- Активні перетворення
- Пасивні трансформації
Активні перетворення – це ті, що змінюють рядки даних та кількість вхідних рядків, що передаються їм. Наприклад, якщо перетворення отримує десять рядків на вхід і повертає п'ятнадцять рядків на вихід, то це активне перетворення. Дані в рядку також змінюються в активному перетворенні.
Пасивні перетворення – це ті, які не змінюють кількість вхідних рядків. У пасивних перетвореннях кількість вхідних і вихідних рядків залишається незмінною, і на рівні рядків змінюються лише дані.
Під час пасивного перетворення нові рядки не створюються, а існуючі рядки не видаляються.
Нижче наведено список трансформацій в Informatica
- Перетворення кваліфікуючого джерела
- Трансформація агрегатора
- Трансформація маршрутизатора
- Столярна трансформація
- Трансформація рангу
- Послідовність Generator Перетворення
- Перетворення управління транзакціями
- Пошук та повторно використана трансформація
- Перетворення нормалізатора
- Налаштування продуктивності для трансформації
- Зовнішня трансформація
- Перетворення виразу
Що таке перетворення фільтра?
Фільтр-трансформація є активною трансформацією, оскільки вона змінює кількість записів.
Використовуючи перетворення Фільтр, ми можемо фільтрувати записи на основі умови фільтра.
Наприклад, для завантаження записів співробітників, у яких deptno дорівнює лише 10, ми можемо застосувати перетворення фільтра до карти.ping з умовою фільтра deptno=10. Таким чином, перетворення фільтра пропустить лише ті записи, які мають deptno=10, а решту записів буде відкинуто.
Умова фільтра за замовчуванням має значення TRUE, тому щойно створене перетворення фільтра пропускає кожен рядок, доки не буде введено умову. Кожен рядок, який повертає значення FALSE, відкидається, а повідомлення записується в журнал сеансу.
Як використовувати перетворення фільтрів
Крок 1) Створити картаping з джерелом «EMP» та цільовим об’єктом «EMP_TARGET».
Крок 2) Тоді на картіping:
- Виберіть меню «Трансформація»
- Виберіть опцію «Створити»
Крок 3) Потім у вікні «Створити перетворення»:
- У списку виберіть «Перетворення фільтра».
- Введіть назву трансформації «fltr_deptno_10»
- Виберіть опцію «Створити»
Крок 4) Трансформацію фільтра буде створено. Натисніть кнопку «Готово» у вікні «Створити трансформацію».
Крок 5) На картіping:
- Перетягніть усі стовпці кваліфікатора джерела до перетворення фільтра
- Зв’язати стовпці з перетворення фільтра з цільовою таблицею
Крок 6) Double- клацніть перетворення Фільтр, щоб відкрити його властивості, а потім:
- Виберіть вкладку «Властивості»
- Клацніть редактор умов фільтра
Крок 7) Потім у редакторі виразів умови фільтра:
- Введіть умову фільтра – deptno=10
- Натисніть кнопку «ОК»
Крок 8) Тепер знову у вікні «Редагувати трансформації», на вкладці «Властивості» ви побачите умову фільтра. Натисніть кнопку «ОК».
Тепер збережіть картуping та виконати його після створення Сесія та робочийУ цільову таблицю будуть завантажені лише записи з deptno=10.
Таким чином, ви можете фільтрувати вихідні записи за допомогою перетворення Фільтр.
Фільтр проти маршрутизатора проти фільтра кваліфікатора джерела
Три об'єкти в Informatica можуть видалити небажані рядки, і вибір неправильного об'єкта призводить до зниження продуктивності або видимості відхилених даних.
| Об'єкт | Як видаляються рядки | Коли його вибрати |
|---|---|---|
| Трансформація фільтра | Одна умова на перетворення. Рядки, що повертають значення FALSE, видаляються та записуються в журналі сеансу. | Одне просте правило, що застосовується всередині картиping. |
| Трансформація маршрутизатора | Кілька умов групування за один прохід. Рядки, що не відповідають жодній групі, переходять до групи за замовчуванням. | Рядки необхідно розділити на кілька потоків, або ж відхилені рядки необхідно перехопити. |
| Кваліфікатор джерела фільтрувати | Умова стає частиною речення WHERE SQL-запиту, що зчитується з реляційного джерела. | Джерело є реляційним, і небажані рядки ніколи не повинні залишати базу даних. |
Один маршрутизатор зчитує вхідні дані один раз, тоді як кілька перетворень фільтра, що перевіряють ті самі вхідні дані, змушують службу інтеграції обробляти ці дані знову для кожного з них. Фільтр кваліфікатора джерела обмежує те, що єtracвід джерела, тоді як перетворення Фільтр обмежує те, що надсилається до цільового пристрою.
Поради щодо покращення ефективності перетворення фільтрів
Умова фільтра оцінюється для кожного рядка, який досягає перетворення, тобто де об'єкт знаходиться на картіping має прямий вплив на час сеансу.
- Розмістіть перетворення Фільтр якомога ближче до джерела, щоб небажані рядки ніколи не проходили через наступні перетворення.
- Вставте умову в кваліфікатор джерела, якщо джерело є реляційним, оскільки база даних фільтрує рядки швидше, ніж служба інтеграції.
- Зберігайте умову простою. Складний вираз можна перемістити до перетворення Expression та звести до одного порту прапорця, який перевіряє Filter.
- Використовуйте один маршрутизатор замість кількох перетворень фільтра, які перевіряють один і той самий вхід, щоб вхідні дані зчитувалися лише один раз.
- Пам’ятайте, що умова за замовчуванням — TRUE, тому фільтр, залишений неналаштованим, пропускає все та приховує помилку.
Оскільки кожен пропущений рядок записується як повідомлення в журнал сеансу, несподівано порожня ціль зазвичай пояснюється читанням цього журналу, а не повторним запуском мапи.ping.









