Considerazioni sull'esecuzione di più fasi in parallelo - Amazon EMR

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à.

Considerazioni sull'esecuzione di più fasi in parallelo

  • Le fasi in esecuzione in parallelo possono essere completate in qualsiasi ordine, ma le fasi in sospeso nella coda passano allo stato in esecuzione nell'ordine in cui sono state inviate.

  • Quando si seleziona un livello di simultaneità delle fasi per il cluster, è necessario considerare se il tipo di istanza del nodo primario soddisfa o meno i requisiti di memoria dei carichi di lavoro degli utenti. Il processo di esecuzione della fase principale viene eseguito sul nodo primario per ogni fase. L'esecuzione di più fasi in parallelo richiede più memoria e utilizzo della CPU del nodo primario rispetto all'esecuzione di una fase alla volta.

  • Per ottenere la pianificazione complessa e la gestione delle risorse delle fasi simultanee, è possibile utilizzare caratteristiche di programmazione YARN come FairScheduler o CapacityScheduler. Ad esempio, è possibile utilizzare FairScheduler con un set queueMaxAppsDefault per impedire l'esecuzione di più di un certo numero di processi contemporaneamente.

  • Il livello di concorrenza delle fasi è soggetto alle configurazioni dei gestori delle risorse. Ad esempio, se YARN è configurato con un solo parallelismo di 5, allora è possibile avere solo cinque applicazioni YARN in esecuzione in parallelo anche se StepConcurrencyLevel è impostato su 10. Per ulteriori informazioni sulla configurazione dei gestori delle risorse, consulta Configurazione delle applicazioni nella Guida al rilascio di Amazon EMR.

  • Non è possibile aggiungere una fase con un ActionOnFailure diverso da CONTINUE (CONTINUA) mentre il livello di concorrenza della fase del cluster è maggiore di 1.

  • Se il livello di concorrenza della fase di un cluster è maggiore di uno, la caratteristica ActionOnFailure della fase non si attiverà.

  • Se un cluster ha un livello di concorrenza della fase 1 ma ha più fasi in esecuzione, TERMINATE_CLUSTER ActionOnFailure potrebbe attivarsi, ma CANCEL_AND_WAIT ActionOnFailure non lo farà. Questo caso limite si verifica quando il livello di concorrenza della fase del cluster era maggiore di uno, ma si è abbassato durante l'esecuzione di più fasi.

  • È possibile utilizzare la scalabilità automatica di EMR per aumentare o ridurre in base alle risorse YARN evitando per evitare conflitti tra risorse. Per ulteriori informazioni, consulta Utilizzo del dimensionamento automatico con una policy personalizzata per i gruppi di istanze nella Guida alla gestione di Amazon EMR.

  • Quando si riduce il livello di concorrenza delle fasi, EMR consente di completare tutte le fasi in esecuzione prima di ridurne il numero. Se le risorse sono esaurite perché il cluster esegue troppi passaggi simultanei, è consigliabile annullare manualmente tutte le fasi in esecuzione per liberare risorse.