Wyobraź sobie, że jesteś pracownikiem dużej korporacji i Twoim zadaniem jest zbudowanie kilkudziesięciu procesów migracji danych. Zbudowałeś je wszystkie, wykonałeś testy jednostkowe pojedynczych zadań migracyjnych i chciałbyś wreszcie uwolnić się od uruchamiana wszystkich tych procesów oddzielnie. Możliwości jest kilka – skrypt z uruchomieniem wszystkich procesów w odpowiedniej kolejności, narzędzie do automatyzacji procesów lub po prostu zagnieżdżenie wszystkich procesów w jeden w Talend DI.

W tej lekcji postaram się wytłumaczyć czym są procesy master i standalone, jak je zbudować oraz dlaczego warto je wykorzystywać.

Czym jest master i standalone job?

Proces master w Talend Data Integration jest to zbiór podprocesów w jednym zadaniu integracyjnym uruchamiany w określonej kolejności. Wszystkie podprocesy powiązane są ze sobą linkami typy OnSubjobOK. Nie możemy jednak zapominać, że używając połączenia OnSubjobOK powinniśmy określić również ścieżkę OnSubjobError.

Wszystkie procesy zbudowane w Talend DI możesz uruchamiać tylko w dedykowanym narzędziu. Chyba, że.. wyeksportujesz je jako procesy niezależne, czyli standalone. Talend daje Ci możliwość wyeksportowania procesów jako pliki systemu Unix (skrypt sh) bądź Windows (skrypt formatu bat).

Budujemy proces master

Utwórz nowy proces w repozytorium i przeciągnij na pole Designer’a procesy, które chcesz uruchomić w jednym job’ie. Następnie połącz je ze sobą za pomocą linku OnSubjobOK.

Procesy możesz dodawać używając także pustego komponentu tRunJob i uzupełniając takie atrybuty jak schemat i nazwę procesu.

Następnie od każdego procesu poprowadź link OnSubjobError do komponentów tDie – jesli chcesz zatrzymać proces master w przypadku niepowodzenia któregoś z procesów wewnętrznych.

Twój pierwszy proces master jest gotowy – spróbuj go uruchomić. W przypadku poprawnego wykonania wszystkich podprocesów, master job wykona się prawidłowo i zwróci kod zakończenia “0” informujący o sukcesie.

Upewnij się, że Twój komponent tRunJob ma zaznaczone pole “Die on child error”, które pozwala zatrzymać proces na podprocesie zakończonym niepowodzeniem. Tym samym, jeśli opcja ta nie jest zaznaczona – proces mimo napotkanych błędów będzie wykonywał kolejne podprocesy.

Jednak w przypadku zakończenia któregokolwiek z podprocesów niepowodzeniem, proces master zakończy się niepowodzeniem i zatrzyma ładowanie dalszych danych.

Standalone job

W celu utworzenia procesu standalone:

  1. Wybierz proces w repozytorium i kliknij na nim prawym przyciskiem myszy wybierając Build Job
  2. Wybierz interesujące parametry – zwróć zwłaszcza uwagę na Shell launcher (All / Windows / Unix) i Context scripts, gdzie możesz wybrać z jakim kontekstem chcesz utworzyć proces master
  3. Kliknij Finish .

W wyeksportowanym folderze znajdziesz procesy w formacie jar, proces bat dla systemu operacyjnego Windows, a jeśli wybrałeś także opcję Unix – skrypt sh. Skrypty dla poszczególnych systemów operacyjnych to nic innego jak polecenia uruchamiające w określonej w Talend DI kolejności Twoje podprocesy wyeksportowane w formacie jar.

Jeśli spodobał Ci się ten post to zostaw proszę komentarz poniżej oraz udostępnij ten post na swoim Facebook’u, Twitter’ze, LinkedIn lub innej stronie z mediami społecznościowymi.
Dzięki!

0 0 vote
Article Rating
Subscribe
Powiadom o
guest
0 komentarzy
Inline Feedbacks
View all comments