Skip to content

Workflow ​

Il Workflow è il componente che permette di realizzare la propria pipeline di Data Science & Machine Learning.

Gestione dei Workflow ​

Per accedere alla schermata di gestione dei Workflow utilizzare il menù laterale:

sidebar-menu-with-workflows-section-highlighted

workflows-management-page

Visualizzazione dei Workflow ​

Dalla pagina di gestione dei Workflow è possibile visualizzare i Workflow pubblici, del team di appartenenza ed i propri privati.

Qui, per ciascuno di essi, sono disponibili le seguenti funzioni:

FunzionePulsante
Eseguireexecute-workflow-icon-button
Creare Templatecreate-template-from-existing-workflow-icon-button
Modificareedit-workflow-icon-button
Eliminaredelete-workflow-icon-button
Report workflowreport-workflow-icon-button

Cliccando sulla card stessa si accederà invece al pannello dettaglio Workflow.

workflow-details-page

Dove, in alto a destra, saranno disponibili funzioni aggiuntive:

workflow-details-page-top-buttons-set

quali:

FunzionePulsante
Visualizzazione contenuti multimediali generati dai Service del Workflowworkflow-media-results-button
Selezione versione Workflowworkflow-version-selector
Visualizzazione annotazioni per il Workflowworkflow-notes-view-button
Aggiunta del Workflow ad un Projectworkflow-details-page-manage-projects-icon-button
Esportazione del Workflowworkflow-details-page-export-workflow-icon-button

All'interno della stessa pagina, in basso, sono inoltre disponibili le seguenti sezioni a scomparsa:

  • Workflow: per interagire con i componenti del Workflow

  • Datasets: per visualizzare l'elenco dei dataset in input e in output assieme ad una loro anteprima (workflow-details-dataset-preview-icon-button)

    workflow-details-datasets-collapsable-section

  • Models: per visualizzare l'elenco dei modelli in input e in output, e scaricarli (workflow-details-model-download-icon-button)

    workflow-details-models-collapsable-section

  • Schedules: per impostare e visualizzare le pianificazioni di esecuzione del Workflow

    workflow-details-workflow-schedulers-section

Le seguenti sezioni descrivono più nel dettaglio le suddette funzionalità

Workflow Media (Contenuti Multimediali) ​

Al click su workflow-media-results-button si aprirà la schermata di visualizzazione dei contenuti multimediali creati dai Service componenti il Workflow (vedi anche Service - Workflow Media):

application-media-panel-open

Da qui sarà possibile:

  1. Visualizzare i contenuti multimediali generati da ciascun Service
  2. Selezionare l'esecuzione specifica per la quale visualizzare i contenuti

Selezione Versione ​

Dalla pagina di dettaglio di un Workflow è possibile accedere al selettore di versione:

workflow-version-selector

Da lì è possibile selezionare una versione specifica ed eseguire su di essa diverse operazioni: esecuzioni, modifica, ecc.

workflow-specific-version-selected

La selezione sarà temporanea. Nel caso in cui si volesse impostare una versione specifica come default, cliccare sull'icona star-icon. Da quel momento in poi la card del Workflow a catalogo punterà a questa versione.

workflow-specific-version-set-as-default

Visualizzazione Annotazioni ​

Al click su workflow-notes-view-button si aprirà l'elenco delle annotazioni assegnate al Workflow:

workflow-details-page-view-workflow-annotations-button

Aggiunta ad un Project ​

Al click su workflow-details-page-manage-projects-icon-button si aprirà il dialog che consentirà di aggiungere il Workflow ad un Project.

I Project disponibili sono quelli precedentemente creati dall'apposita sezione (vedi Asset -> Projects)

add-workflow-to-project-dialog

Esportazione ​

Al click su workflow-details-page-export-workflow-icon-button sarà possibile esportare il Workflow in diversi formati:

  • Standalone
  • Manifest

workflow-export-modes-dialog-with-dropdown

Selezionando la modalità Standalone potrai scaricare uno stack Docker Compose implementante il Workflow e pensato per l'esecuzione di questi in locale o su sistemi diversi da ALIDA.

Selezionando invece la modalità Manifest potrai scaricare l'equivalente versione Kubernetes in formato manifest JSON.

Schedulazione ​

Dalla sezione Schedules sarà possibile pianificare l'esecuzione del Workflow attraverso espressioni Cron.

workflow-details-workflow-schedulers-section

**

Creazione Workflow ​

  • Per le istruzioni di creazione del Workflow rimandiamo al paragrafo Crea Workflow della sezione Quickstart.

  • Per le funzionalità disponibili sul Workflow Designer rimandiamo alla sezione Designer

In questa sezione illustremo alcune funzioni aggiuntive utili nelle fasi di creazione e modifica di un Workflow.

Per gli esempi prenderemo a riferimento il Workflow creato durante il Quickstart.

quickstart-workflow

Impostazioni Preliminari ​

Subito dopo aver cliccato sul pulsante Create Workflow, si aprirà il seguente form per le impostazioni preliminari:

preliminary-workflow-settings

avente i seguenti campi:

  • Access Level
  • Default Data Source

Access Level determina il livello di visibilità dell'asset Workflow (come visto in Concetti Base)

Default Data Source permette di selezionare la Datasource predefinita a cui tutti i Service del Workflow punteranno per il salvataggio dei risultati. Tale configurazione di default potrà poi essere cambiata per singolo Service dall'interno del Workflow Designer (vedi sezione seguente Impostazioni Porte I/O)

Informazioni Generali ​

  • Il Workflow Designer consentirà di collegare tra loro solo porte compatibili

Impostazioni Porte I/O ​

Cliccando su una delle porte dei blocchi sul canvas, si aprirà sul pannello Dettagli Elementi un form di configurazione, il cui contenuto dipenderà non solo al tipo di porta ma anche di blocco (service, dataset, ...)

Per esempio cliccando sulla porta di input di tipo dataset del Service KMeans, troviamo la possibilità di selezionare - attraverso le relative checkbox - quali colonne del dataset effettivamente passare al Service.

elements-details-panel-showing-service-input-dataset-port-configurator

Cliccando invece sulla porta di output di tipo dataset del Service, potremo sulla destra selezionare la datasource destinazione per il dataset in uscita. elements-details-panel-showing-service-output-dataset-port-configurator

Selezione Target di esecuzione per i Service ​

Per ciascun Service componente il Workflow è possibile impostare un Target.

Il Target determina l'insieme dei nodi del cluster ALIDA candidati ad ospitare l'esecuzione dei Service che gli sono stati assegnati.

I possibili Target selezionabili dovranno essere preventivamente definiti dall'amministratore da pannello di controllo (vedi Gestione dei Target)

Annotazione del Workflow ​

ALIDA consente, da Workflow Designer, di assegnare al Workflow un insieme di note strutturate. Note che dovranno essere state precedentemente definite da un amministratore da Pannello di Controllo (vedi Definizione Annotazioni).

Per associare delle note strutturate al Workflow, aprire il pannello di gestione cliccando su notes-button-large.

workflow-designer-with-notes-button-highlighted

A quel punto la procedura di aggiunta e gestione delle note è del tutto analoga a quanto descritto per i Service (Annotazione Service)

Valorizzazione automatica dei parametri di porta ​

Nel collegare Service tra loro, ALIDA provvederà ad assegnare i valori gli argomenti (quelli definiti nel metamodello) della porta di output di un Service ai corrispettivi della porta di input del Service successivo nel Workflow.

Esempio

two-services-coupling-example

Modifica di un Workflow ​

E' possibile modificare un Workflow, o rapidamente le proprietà di un Service che lo compone, cliccando sul pulsante edit-workflow-icon-button.

Versionamento ​

Ad ogni modifica il Workflow verrà versionato:

workflow-details-page-with-versions-button-highlighted

e sarà possibile impostare una versione precedente come default

workflow-details-page-with-versions-list-and-star-button-highlighted

Esecuzione di un Workflow ​

Una volta che il Workflow è stato configurato e creato, può essere eseguito o schedulato per l'esecuzione. Se configurate, ALIDA invierà anche le relative notifiche sul relativo stato di esecuzione.

Selezione del Namespace ​

Al click sul pulsante execute-workflow-icon-button, se l'amministratore di sistema ha definito namespace aggiuntivi da Pannello di Controllo, si aprirà un pop-up per la selezione del namespace.

Qui Basti sapere che per namespace si intende un'area del cluster dedicata all'esecuzione del Workflow. Più namespace possono differire per politiche di sicurezza, risorse computazionali disponibili e altro (Consulta il tuo amministratore di sistema per maggior informazioni).

workflow-namespace-selection-popup

Possibili Stati Workflow ​

  • READY: il Workflow è appena stato creato ed è pronto per l'esecuzione
  • STARTING: il Workflow è in fase di inizializzazione. Risorse per esso stanno venendo allocate
  • RUNNING: il Workflow è attualmente in esecuzione
  • COMPLETED: il Workflow ha completato l'esecuzione. Risultati disponibili
  • STOPPED: il Workflow è stato manualmente fermato dall'utente
  • ERROR: il Workflow si è interrotto a causa di un errore

Log dei Service del Workflow ​

Dalla pagina di dettaglio di un Workflow eseguito o in esecuzione è possibile accedere al log dei singoli Service componenti che hanno superato la fase di inizializzazione (stato STARTING).

Come indicato in figura, cliccando su show-logs-button si aprirà il pannello di visualizzazione dei log.

workflow-details-page-with-service-logs-dialog-open

Da qui, cliccando su download-log-files-button sarà anche possibile scaricare una copia dei log in locale.

Eliminazione di un Workflow ​

Cliccando su delete-workflow-icon-button sarà possibile eliminare un Workflow dal catalogo.

ALIDA chiederà conferma:

workflow-deletion-confirmation-button

Report di un Workflow ​

Cliccando su report-workflow-icon-button sarà possibile scaricare un report sul Workflow in formato ZIP.

Tale archivio conterrà:

  1. report.html: un file HTML con informazioni sul Workflow ed in particolare su ogni Run, Dataset, Model, Datasource e Service utilizzato.
  2. media: una cartella contenenti eventuali file generati dai Service del Workflow. Inoltre, questa conterrà una sottocartella per ogni Service che ha generato un file. La sottocartella sarà identificata dall'id del Service e conterrà i dati da esso generati.

report-workflow-example

Creazione di un Template ​

Cliccando su create-template-from-existing-workflow-icon-button sarà possibile creare un Template a partire da un Workflow esistente.

Visita Gestione Template per maggiori informazioni.