Esecuzione di lavori DataStage
Componenti che costituiscono un job DataStage
- Un flusso DataStage
- Un ambiente di runtime
- Parametri lavoro
- Serie di parametri
Relazioni di lavoro
I flussi DataStage possono avere una relazione uno - a - molti con i job DataStage . È possibile utilizzare un flusso DataStage per creare più job.
Lavori a più istanze
Tutti i job DataStage possono essere istanziati più volte, determinando più esecuzioni di job o richiami dello stesso job non modificato. Non è necessario attendere che un lavoro completi l'invio di una nuova richiesta di esecuzione lavoro per tale lavoro. È possibile inviare una nuova richiesta di esecuzione lavoro tramite l'API REST, la riga comandi (cpdctl) o il dashboard Lavori. È anche possibile utilizzare più richiami dello stesso job per elaborare dataset differenti impostando parametri differenti per ogni esecuzione. Ogni esecuzione di job DataStage ha un ID di esecuzione job.
Lo sviluppatore che progetta il job è responsabile di garantire che più esecuzioni di job non siano in conflitto tra loro. Ad esempio, diverse chiamate in esecuzione simultaneamente potrebbero scrivere nella stessa tabella. Più esecuzioni di un lavoro potrebbero anche influire negativamente sulle prestazioni del lavoro.
È possibile impostare un valore DSJobInvocationId da far apparire come "Nome" dell'esecuzione del lavoro nella dashboard Lavori, in modo da poter trovare un particolare lavoro eseguito per nome. È possibile definire il DSJobInvocationId creando un parametro o una variabile d'ambiente. È possibile impostare il DSJobInvocationId da una pipeline o quando si avvia il lavoro DataStage (ad esempio con la riga di comando).
Quando si esegue un flusso di pipeline o un lavoro di pipeline, è possibile specificare facoltativamente il nome di un lavoro e vedere i diversi lavori nella dashboard Dettagli del lavoro. Altrimenti, è possibile assegnare un parametro locale DSJobInvocationId
a un nodo Esegui pipeline o Esegui DataStage (quest'ultimo non è disponibile per watsonx). Se sono impostati sia il parametro DSJobInvocationId
che il nome di esecuzione del lavoro del nodo, verrà utilizzato DSJobInvocationId
. Se non sono impostati, viene utilizzato il valore predefinito "job run".
Non è necessario creare il DSJobInvocationId per creare un lavoro a più istanze.
I lavori paralleli e di sequenza migrati DataStage importano DSJobInvocationId come parametro.
Le istanze del job DataStage richiamate separatamente sono differenti dalle istanze generate quando si esegue un job partizionato su diversi processori. Il partizionamento integrato e la raccolta gestiscono la situazione in cui diversi processi desiderano leggere o scrivere nella stessa origine dati per i lavori partizionati.
Creazione di un job dall'area di disegno DataStage
Per creare un lavoro DataStage direttamente in DataStage, è necessario creare il lavoro da DataStage all'interno di un flusso DataStage.
- Aprire un flusso DataStage .
- Facoltativo: fare clic su Impostazioni nella barra degli strumenti per aprire la pagina Impostazioni e specificare le impostazioni per il lavoro.
- Fare clic su Compila per compilare il flusso DataStage .
- Fare clic su Esegui per eseguire il flusso DataStage .
Un lavoro viene creato ed eseguito automaticamente. Una volta terminata l'esecuzione, viene elencata nella scheda Lavori nel progetto in cui si trova il flusso DataStage .
Creazione di un job dal livello di progetto
È possibile creare un job dalla scheda Asset del progetto.
- Selezionare un flusso DataStage dall'elenco nella scheda Asset del progetto. Scegliere Crea lavoro dall'icona del menu con gli elenchi di opzioni
alla fine della riga della tabella.
- Definire i dettagli del lavoro immettendo un nome e una descrizione (facoltativo).
- Specificare le impostazioni che si desidera per il lavoro.
- Nella pagina Pianificazione , è possibile aggiungere una pianificazione singola o ripetuta.
Se si definiscono un giorno e un'ora di inizio senza selezionare Ripeti, il lavoro verrà eseguito esattamente una volta al giorno e all'ora specificati. Se si definisce una data e un'ora di inizio e si seleziona Ripeti, il lavoro verrà eseguito per la prima volta alla data / ora indicata nella sezione Ripeti.
Non è possibile modificare il fuso orario; la pianificazione utilizza l'impostazione del fuso orario del browser Web. Se si escludono determinati giorni della settimana, il lavoro potrebbe non essere eseguito come ci si aspetterebbe. Il motivo potrebbe essere dovuto a una discrepanza tra il fuso orario dell'utente che crea la pianificazione e il fuso orario del nodo di elaborazione in cui viene eseguito il lavoro.
- Facoltativamente, impostare per visualizzare le notifiche per il lavoro. È possibile selezionare il tipo di avvisi da ricevere.
- Rivedere le impostazioni del processo. Quindi, creare il lavoro ed eseguirlo immediatamente oppure creare il lavoro ed eseguirlo in un secondo momento.
Creare un lavoro dalla riga comandi cpdctl dsjob utility
È possibile creare un job DataStage utilizzando un flusso DataStage esistente con il programma di utilità della riga comandi cpdctl dsjob, cpdctl dsjob create-job
.
cpdctl dsjob create-job --project DataStageProjectName --flow DataStageFlowName \
--description "This is a test job created from command line" \
--schedule-start 2022-11-07 \
--schedule-end 2022-12-08 \
--repeat hourly
Lavori in esecuzione
Per eseguire un lavoro manualmente, è possibile fare clic sull'icona di esecuzione dalla barra degli strumenti nell'area di disegno DataStage. È possibile avviare un lavoro pianificato in base alla pianificazione e su richiesta.
È anche possibile eseguire un lavoro manualmente facendo clic sull'icona di esecuzione dalla barra degli strumenti quando si visualizzano i dettagli del lavoro per un determinato lavoro. I lavori possono essere pianificati o eseguiti su richiesta. Inoltre, i lavori possono essere eseguiti utilizzando l'API o il programma di utilità della riga comandi.
Gestione dei lavori
- Fare clic sull'icona Modifica filtri per filtrare in base a criteri differenti, come tipo di asset e pianificazione.
- Fare clic sul menu a discesa Lavori accanto al campo di ricerca lavoro per filtrare in base a criteri quali i lavori con esecuzioni attive, le esecuzioni attive, i lavori con esecuzioni terminate e le esecuzioni terminate.
- Immettere le informazioni nel campo di ricerca per cercare lavori specifici.
Visualizzazione dei dettagli di esecuzione del lavoro e metriche di esecuzione
Fare clic su un nome lavoro nell'elenco dei lavori per esaminare le informazioni e i dettagli di esecuzione. La pagina dei dettagli del lavoro elenca anche il nome dell'esecuzione se è stato impostato utilizzando il parametro DSJobInvocationId.
È possibile selezionare una particolare esecuzione per un job e rivedere i dettagli dell'esecuzione. I dettagli della corsa includono la durata, gli orari di inizio e fine, l'utente che ha avviato la corsa, il lavoro associato, il nome della corsa e il flusso DataStage associato. Vengono elencati le impostazioni e i valori dei parametri di runtime. Viene visualizzato anche il log di esecuzione del lavoro per le esecuzioni. Il timestamp mostrato nel registro è quello dell'istanza del server px-runtime in GMT. Non viene convertito nella locale dell'utente mentre si sfoglia il log. Se si desidera che i log dell'esecuzione del lavoro vengano visualizzati in un fuso orario diverso, vedere: Impostazione del fuso orario in DataStage.
Fare clic su Esegui metriche nei dettagli di esecuzione per visualizzare le metriche di esecuzione del processo. Visualizzare un riepilogo delle metriche per il flusso generale o ricercare specifici link e stage. È possibile filtrare le metriche di esecuzione in base allo stato (in corso, non riuscito o completato).
È anche possibile accedere alle metriche di esecuzione dall'interno di un flusso facendo clic sul pulsante Esegui metriche nella barra degli strumenti dell'area. Fare clic su un link o su uno stage nell'elenco delle metriche per spostarne lo stato attivo nell'area di disegno.