

AWS Data Pipeline non è più disponibile per i nuovi clienti. I clienti esistenti di AWS Data Pipeline possono continuare a utilizzare il servizio normalmente. [Ulteriori informazioni](https://aws.amazon.com/blogs/big-data/migrate-workloads-from-aws-data-pipeline/)

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Guasti di una delle dipendenze e riesecuzioni
<a name="dp-manage-cascade-failandrerun"></a>

AWS Data Pipeline consente di configurare il comportamento degli oggetti della pipeline quando una dipendenza fallisce o viene annullata da un utente. È possibile accertarsi che i guasti cadano su altri oggetti della pipeline (consumatori), per evitare attese indefinite. Tutte le attività, i nodi di dati e le precondizioni dispongono di un campo denominato `failureAndRerunMode` con un valore di default di `none`. Per abilitare i guasti di una delle dipendenze, impostare il campo `failureAndRerunMode` su `cascade`. 

Quando questo campo è abilitato, i guasti di una delle dipendenze si verificano se l'oggetto di una pipeline è bloccato nello stato `WAITING_ON_DEPENDENCIES` ed eventuali dipendenze hanno dato esito negativo senza alcun comando in sospeso. Durante un guasto di una delle dipendenze, si verificano i seguenti eventi:
+ Quando un oggetto ha esito negativo, i suoi consumatori vengono impostati su `CASCADE_FAILED` e sia l'oggetto originale sia le precondizioni dei consumatori vengono impostate su `CANCELED`.
+ Tutti gli oggetti già presenti `FINISHED`, `FAILED` oppure `CANCELED` vengono ignorati.

Il guasto di una delle sue dipendenze non funziona sulle dipendenze non riuscite di un oggetto (upstream), tranne per le precondizioni associate all'oggetto originale non riuscito. Gli oggetti di una pipeline interessati da un guasto di una delle dipendenze possono attivare nuovi tentativi o post-operazioni, come, ad esempio `onFail`.

Gli effetti dettagliati di un guasto di una delle dipendenze dipendono dal tipo di oggetto.

## Attività
<a name="dp-manage-cascade-activity"></a>

Un'attività cambia in `CASCADE_FAILED` se una delle dipendenze fallisce e, successivamente, innesca un guasto di una delle dipendenze nei consumatori dell'attività. Se una risorsa da cui dipende un'attività ha esito negativo, l'attività è `CANCELED` e tutti i suoi consumatori cambiano in `CASCADE_FAILED`.

## Nodi di dati e condizioni preliminari
<a name="dp-manage-cascade-datanode"></a>

Se un nodo dati viene configurato come l'output di un'attività che ha esito negativo, il nodo di dati cambia nello stato `CASCADE_FAILED`. Il guasto di un nodo di dati si propaga a qualsiasi precondizione associata che cambia nello stato `CANCELED`.

## Resources
<a name="dp-manage-cascade-resources"></a>

Se gli oggetti che dipendono da una risorsa sono nello stato `FAILED` e la risorsa stessa è nello stato `WAITING_ON_DEPENDENCIES`, allora la risorsa passa allo stato `FINISHED`.

## Riesecuzione di oggetti con errori a cascata
<a name="dp-manage-cascade-rerun"></a>

Per impostazione predefinita, rieseguendo qualsiasi attività o nodo di dati si esegue di nuovo solo la risorsa associata. Tuttavia, impostare il campo `failureAndRerunMode` su `cascade` in un oggetto pipeline consente una nuova esecuzione di un comando su un oggetto di destinazione da propagare a tutti i consumatori, nelle seguenti condizioni: 
+ I consumatori dell'oggetto di destinazione sono nello stato `CASCADE_FAILED`.
+ Le dipendenze dell'oggetto di destinazione non hanno comandi per la riesecuzione in sospeso.
+ Le dipendenze dell'oggetto di destinazione non sono nello stato `FAILED`, `CASCADE_FAILED` o `CANCELED`.

Se tenti di eseguire di nuovo un oggetto `CASCADE_FAILED` e una qualsiasi delle sue dipendenze è `FAILED`, `CASCADE_FAILED` oppure `CANCELED`, la nuova esecuzione fallirà e restituirà l'oggetto allo stato `CASCADE_FAILED`. Per rieseguire l'oggetto fallito senza errori, è necessario rintracciare l'errore fino alla catena di dipendenza per individuare l'origine dell'errore ed eseguire di nuovo l'oggetto. Quando viene inviato il comando di riesecuzione su una risorsa, si tenta anche di eseguire di nuovo tutti gli oggetti che dipendono da tale risorsa. 

## Errori in cascata e backfill
<a name="dp-manage-cascade-backfills"></a>

Se si abilita l'errore a cascata e si dispone di una pipeline che crea molti backfill, gli errori di runtime della pipeline possono causare la creazione e l'eliminazione di risorse in rapida successione senza eseguire operazioni utili. AWS Data Pipeline tenta di avvisarti di questa situazione con il seguente messaggio di avviso quando salvi una pipeline: ` Pipeline_object_name has 'failureAndRerunMode' field set to 'cascade' and you are about to create a backfill with scheduleStartTime start_time. This can result in rapid creation of pipeline objects in case of failures. ` Ciò accade perché un errore a cascata può impostare rapidamente le attività a valle e chiudere i cluster EMR `CASCADE_FAILED` e le risorse EC2 che non sono più necessarie. È consigliabile testare le pipeline con brevi intervalli di tempo per limitare l'impatto di questa situazione. 