Normalizator to aktywna transformacja, używana do konwersji pojedynczego wiersza na wiele wierszy i odwrotnie. Jest to sprytny sposób przedstawiania danych w bardziej zorganizowany sposób.
Jeśli w jednym wierszu powtarzają się dane w wielu kolumnach, można je podzielić na wiele wierszy. Czasami mamy dane w wielu występujących kolumnach. Na przykład
Imię ucznia | Wynik klasy 9 | Wynik klasy 10 | Wynik klasy 11 | Wynik klasy 12 |
Uczeń 1 | 50 | 60 | 65 | 80 |
Uczeń 2 | 70 | 64 | 83 | 77 |
W tym przypadku kolumna wyników klas jest powtarzana w czterech kolumnach. Używając normalizatora, możemy podzielić je na następujący zestaw danych.
Imię ucznia | Klasa | Wynik |
Uczeń 1 | 9 | 50 |
Uczeń 1 | 10 | 60 |
Uczeń 1 | 11 | 65 |
Uczeń 1 | 12 | 80 |
Uczeń 2 | 9 | 70 |
Uczeń 2 | 10 | 64 |
Uczeń 2 | 11 | 83 |
Uczeń 2 | 12 | 77 |
Krok 1 - Utwórz tabelę źródłową „sales_source” i tabelę docelową „sales_target” za pomocą skryptu i zaimportuj je do Informatica
Pobierz powyższy plik Sales_Source.txt
Krok 2 - Utwórz mapowanie zawierające źródło „sales_source” i tabelę docelową „sales_target”
Krok 3 - Z menu transformacji utwórz nową transformację
- Wybierz normalizator jako transformację
- Wpisz nazwę, „nrm_sales”
- Wybierz opcję tworzenia
Krok 4 - Transformacja zostanie utworzona, wybierz opcję gotową
Krok 5 - Następnie kliknij dwukrotnie transformację normalizatora
- Wybierz kartę normalizatora
- Kliknij ikonę, aby utworzyć dwie kolumny
- Wpisz nazwy kolumn
- Ustaw liczbę wystąpień na 4 dla sprzedaży i 0 dla nazwy sklepu
- Wybierz przycisk OK
Kolumny zostaną wygenerowane w transformacji. Zobaczysz 4 kolumny z liczbą sprzedaży, ponieważ ustawimy liczbę wystąpień na 4.
Krok 6 - Następnie w mapowaniu
- Połącz odpowiednio cztery kolumny kwalifikatora źródła z czterech kwartałów z kolumnami normalizatora.
- Połącz kolumnę nazwy sklepu z kolumną normalizatora
- Połącz kolumny nazwa_sklepu i sprzedaż z normalizatora do tabeli docelowej
- Połącz kolumnę GK_sales z normalizatora z tabelą docelową
Zapisz mapowanie i wykonaj je po utworzeniu sesji i przepływu pracy. Dla każdego kwartału sprzedaży w sklepie zostanie utworzony oddzielny wiersz w wyniku transformacji normalizatora.
Wynik naszego mapowania będzie wyglądał następująco:
Nazwa sklepu | Jedna czwarta | Sprzedaż |
DELHI | 1 | 150 |
DELHI | 2 | 240 |
DELHI | 3 | 455 |
DELHI | 4 | 100 |
MUMBAI | 1 | 100 |
MUMBAI | 2 | 500 |
MUMBAI | 3 | 350 |
MUMBAI | 4 | 340 |
Dane źródłowe miały powtarzające się kolumny, a mianowicie KWARTAŁ1, KWARTER2, KWARTER3 i KWARTAŁ4. Za pomocą normalizatora przestawiliśmy dane tak, aby mieściły się w jednej kolumnie KWARTAŁ i dla jednego rekordu źródłowego w miejscu docelowym tworzone są cztery rekordy.
W ten sposób można znormalizować dane i utworzyć wiele rekordów dla jednego źródła danych.