Vai al contenuto

Creazione di una pipeline

La creazione di una pipeline inizia nella dashboard cliccando sul pulsante CREATE NEW: si apre una modale che permette di inserire nome, descrizione e business island della nuova pipeline da creare.

Datalabs Pipeline

Nome e business island sono obbligatori e non potranno essere modificati in seguito, la descrizione è opzionale e può essere modificata successivamente. Due pipeline non possono avere lo stesso nome: il nome viene verificato e se corrisponde a quello di una pipeline già esistente viene visualizzato un messaggio di errore e non è possibile proseguire.

Cliccando su Continue si entra nella pagina di edit della pipeline, inizialmente vuota.

Datalabs Pipeline

Non è possibile salvare la pipeline se non si aggiunge almeno un job.

Aggiunta e configurazione di un job singolo

Cliccando sul + si apre la modale per l'aggiunta di un nuovo elemento, offrendo la scelta tra job singolo e blocco di job da eseguire in parallelo.

Datalabs Pipeline

Selezionando Single job si passa alla selezione del job da inserire. L'elenco dei job disponibili è filtrato per tipo e opzionalmente per nome (cliccando sulla i si apre il dettaglio del job in una nuova scheda del browser). Sono mostrati solo job della business island associata alla pipeline e solo appartenenti ai moduli a cui l'utente ha accesso.

Datalabs Pipeline

Selezionando un job e cliccando Add to pipeline questo viene aggiunto alla pipeline e si passa alla sua configurazione.

Datalabs Pipeline

È possibile assegnare un nome al job (il nome è un alias valido solo all'interno di questa pipeline, di default è pari al nome del job originale che viene comunque mostrato) e inserire gli eventuali parametri di lancio.

Cliccando su Save si applicano le modifiche (ma la pipeline non è ancora salvata).

Datalabs Pipeline

Cliccando sul job inserito si riapre l'interfaccia di configurazione da cui è possibile modificare nome e parametri inseriti.

Cliccando sull'icona + nel grafo è possibile inserire un altro job con le stesse modalità.

Datalabs Pipeline

Aggiunta e configurazione di un blocco di job in parallelo

Oltre a job singoli è possibile inserire blocchi di elaborazione in parallelo.

Tutti i job contenuti all'interno del blocco verranno eseguiti in parallelo. Se anche uno solo dei job contenuti va in errore l'intero blocco parallelo sarà considerato in errore ma l'esecuzione degli altri job verrà comunque portata a termine.

Eventuali job successivi nella pipeline verranno eseguiti solo quando tutti i job contenuti nel blocco parallelo avranno terminato la loro esecuzione.

Cliccando sul + si apre la modale per l'aggiunta di un nuovo elemento, offrendo la scelta tra job singolo e blocco di job da eseguire in parallelo.

Datalabs Pipeline

Selezionando Parallel block si passa alla selezione dei job che saranno contenuti all'interno del blocco. È possibile selezionare solo blocchi di elaborazione (sono quindi esclusi job di data quality e data matching).

Datalabs Pipeline

In basso è indicato il numero di job selezionati (è obbligatorio selezionarne almeno uno) e il limite massimo di job selezionabili, cliccando sull'indicazione o sulla freccia si espande il box mostrando i job attualmente selezionati (con la possibilità di deselezionarli). Anche qui la i permette di aprire il dettaglio del job in una nuova scheda del browser.

Datalabs Pipeline

È possibile assegnare un nome al blocco parallelo, configurare i singoli job e modificare l'elenco dei job contenuti (cliccando su Add new +).

Datalabs Pipeline

Cliccando su Save si applicano le modifiche (ma la pipeline non è ancora salvata).

Datalabs Pipeline

Fork del flusso di esecuzione

Tutti i job e i blocchi di job in parallelo permettono di creare un fork in caso di ERROR: in tal modo, in caso di errore, verranno eseguiti altri job (o conclusa l'esecuzione, ma senza generare un ERROR come esito finale).

Datalabs Pipeline

Le possibilità di fork dipendono dal tipo di job selezionato:

  • per tutti i tipi di job e i blocchi di job in parallelo è possibile forcare in caso di errore
  • per i job di Data Matching è possibile anche forcare per OK e KO
  • per i job di Data Quality è possibile anche forcare per OK, KO e warning

È possibile modificare il tipo di fork solo se non sono ancora stati inseriti job nei sottorami derivanti dal fork stesso.

Come si comporta il fork?

Nel caso di blocco parallelo il fork si applica all'intero blocco: se anche uno solo dei job contenuti va in errore l'intero blocco è considerato in errore. Sia nel caso OK che nel caso ERROR gli elementi successivi della pipeline vengono eseguiti solo quando tutti i job contenuti nel blocco parallelo hanno terminato la loro esecuzione.

Error e KO

Il concetto di KO è diverso da quello di ERROR: KO nel caso di Data Matching e Data Quality indica che il job ha terminato correttamente la sua esecuzione e l'esito dei controlli è negativo, ERROR indica invece che un job non ha potuto portare a termine la sua esecuzione per problemi tecnici.

Fork per tutti i job (tranne Data Matching e Data Quality) e blocchi paralleli

Nessun fork

In caso di errore nell'esecuzione del job o del blocco l'esecuzione della pipeline si interrompe e va in stato ERROR

Datalabs Pipeline

Fork in caso di errore

Se l'esecuzione del job o del blocco va a buon fine si prosegue per il ramo OK, in caso di errore si procede per il ramo ERROR

Datalabs Pipeline

Fork per i job di Data Matching

Nessun fork

In caso di errore nell'esecuzione del job l'esecuzione della pipeline si interrompe e va in stato ERROR.

Datalabs Pipeline

Selezionando Fork in case of Error si creano due rami, uno eseguito se l'esecuzione del job va a buon fine (indipendentemente dal risultato) e l'altro eseguito se l'esecuzione del job va in errore (in tal caso l'esecuzione della pipeline non viene interrotta).

Datalabs Pipeline

Fork in caso di OK | KO

Se l'esecuzione del job va a buon fine e l'esito è positivo si prosegue per il ramo OK, se l'esito è negativo per il ramo KO. Se l'esecuzione del job va in errore l'esecuzione dell'intera pipeline si interrompe e va in stato ERROR.

Datalabs Pipeline

Selezionando Fork in case of Error si crea un ulteriore ramo: se l'esecuzione del job va a buon fine e l'esito è positivo si prosegue per il ramo OK, se l'esito è negativo per il ramo KO. Se l'esecuzione del job va in errore si procede per il ramo ERROR.

Datalabs Pipeline

Fork per i job di Data Quality

Nessun fork

In caso di errore nell'esecuzione del job l'esecuzione della pipeline si interrompe e va in stato ERROR.

Datalabs Pipeline

Selezionando Fork in case of Error si creano due rami, uno eseguito se l'esecuzione del job va a buon fine (indipendentemente dal risultato) e l'altro eseguito se l'esecuzione del job va in errore (in tal caso l'esecuzione della pipeline non viene interrotta).

Datalabs Pipeline

Fork in caso di OK

Se l'esecuzione del job va a buon fine e l'esito è positivo si prosegue per il ramo OK, se l'esito è warning o negativo si procede per l'altro ramo. Se l'esecuzione del job va in errore l'esecuzione dell'intera pipeline si interrompe e va in stato ERROR.

Datalabs Pipeline

Selezionando Fork in case of Error si crea un ulteriore ramo: se l'esecuzione del job va a buon fine e l'esito è positivo si prosegue per il ramo OK, se l'esito è warning o negativo per il ramo WARNING/KO. Se l'esecuzione del job va in errore si procede per il ramo ERROR.

Datalabs Pipeline

Fork in caso di Warning

Se l'esecuzione del job va a buon fine e l'esito è warning si prosegue per il ramo WARNING, se l'esito è positivo o negativo si procede per l'altro ramo. Se l'esecuzione del job va in errore l'esecuzione dell'intera pipeline si interrompe e va in stato ERROR.

Datalabs Pipeline

Selezionando Fork in case of Error si crea un ulteriore ramo: se l'esecuzione del job va a buon fine e l'esito è warning si prosegue per il ramo WARNING, se l'esito è positivo o negativo per il ramo OK/KO. Se l'esecuzione del job va in errore si procede per il ramo ERROR.

Datalabs Pipeline

Fork in caso di KO

Se l'esecuzione del job va a buon fine e l'esito è negativo si prosegue per il ramo KO__, se l'esito è positivo o warning si procede per l'altro ramo. Se l'esecuzione del job va in errore l'esecuzione dell'intera pipeline si interrompe e va in stato _ERROR.

Datalabs Pipeline

Selezionando Fork in case of Error si crea un ulteriore ramo: se l'esecuzione del job va a buon fine e l'esito è negativo si prosegue per il ramo KO, se l'esito è positivo o warning per il ramo OK/WARNING. Se l'esecuzione del job va in errore si procede per il ramo ERROR.

Datalabs Pipeline

Fork in caso di OK, Warning e KO

In questo caso si creano tre rami distinti per i tre possibili esiti del job. Se l'esecuzione del job va in errore l'esecuzione dell'intera pipeline si interrompe e va in stato ERROR.

Datalabs Pipeline

Selezionando Fork in case of Error si crea un ulteriore ramo: se l'esecuzione del job va in errore si procede per il ramo ERROR.

Datalabs Pipeline

Eliminazione e disabilitazione di un job

È possibile eliminare un job (previa conferma) cliccando sull'icona Delete della sua interfaccia di configurazione: il job verrà eliminato dalla pipeline insieme a tutti i suoi discendenti.

È possibile disabilitare o riabilitare un job tramite lo switch Enabled:

Datalabs Pipeline

Un job disabilitato non viene eseguito e in caso di biforcazioni il flusso procede sempre nel ramo OK.

Datalabs Pipeline

Salvataggio pipeline

Warning

Tutte le modifiche fatte in questa fase non hanno effetto finché non si salva la pipeline (pulsante Save in alto). Non è possibile salvare se la pipeline non contiene almeno un job.

Cliccando su Save in alto compare ancora una finestra in cui si chiede di configurare la schedulazione della pipeline (il default, Manually, indica che la pipeline non è schedulata e dovrà pertanto essere lanciata manualmente). La schedulazione è comunque modificabile in seguito.

Datalabs Pipeline

Cliccando su Continue si completa il salvataggio e si carica il dettaglio della pipeline appena creata:

Datalabs Pipeline