Usare il server della cronologia di Apache Spark esteso per il debug e la diagnosi di applicazioni Apache Spark
Questo articolo illustra come usare il server cronologia Apache Spark esteso per il debug e la diagnosi delle applicazioni Spark completate e in esecuzione.
Accedere al server cronologia Apache Spark
Il server cronologia Apache Spark è l'interfaccia utente Web per le applicazioni Spark, sia completate che in esecuzione. È possibile aprire l'interfaccia utente Web di Apache Spark dal notebook dell'indicatore di stato o dalla pagina dei dettagli dell'applicazione Apache Spark.
Aprire l'interfaccia utente Web di Spark dal notebook dell'indicatore di stato
Quando viene avviato un processo di Apache Spark, il pulsante per aprire l'interfaccia utente Web Spark si trova nell'opzione Altre azioni nell'indicatore di stato. Selezionare Interfaccia utente Web di Spark e attendere alcuni secondi, quindi viene visualizzata la pagina dell'interfaccia utente di Spark.
Aprire l'interfaccia utente Web del server cronologia Spark dalla pagina dei dettagli dell'app Apache Spark
L'interfaccia utente Web di Spark può essere aperta anche tramite la pagina dei dettagli dell'applicazione Apache Spark. Selezionare Hub di monitoraggio sul lato sinistro della pagina, quindi selezionare un'applicazione Apache Spark. Viene visualizzata la pagina dei dettagli dell'app.
Per un'applicazione Apache Spark il cui stato è in esecuzione, il pulsante mostra Interfaccia utente di Spark. Selezionando Interfaccia utente di Spark viene visualizzata la pagina Interfaccia utente di Spark.
Per un'applicazione Apache Spark il cui stato è terminato, tale stato terminato può essere Arrestato, Non riuscito, Annullato o Completato. Il pulsante mostra il server cronologia di Spark. Selezionando Servercronologia di Spark viene visualizzata la pagina Interfaccia utente di Spark.
Scheda del grafico nel server cronologia Apache Spark
Selezionare l'ID del processo da visualizzare. Successivamente, selezionare Grafico nel menu degli strumenti per passare alla visualizzazione grafici.
Panoramica
È possibile visualizzare una panoramica del processo nel grafico del processo generato. Per impostazione predefinita, il grafico mostra tutti i processi. È possibile filtrare questa visualizzazione in base all'ID processo.
Schermo
Per impostazione predefinita, la visualizzazione Stato è selezionata. È possibile esaminare il flusso di dati selezionando Lettura o Dati scritti nell'elenco a discesa Visualizza.
Il nodo del grafico visualizza i colori visualizzati nella legenda della mappa termica.
Riproduzione
Per riprodurre il processo, selezionare Riproduzione. È possibile selezionare Arresta in qualsiasi momento per interrompere. I colori delle attività mostrano stati differenti durante la riproduzione:
Colore | Significato |
---|---|
Verde | Esito positivo: il processo è stato completato correttamente. |
Arancione | Tentativi eseguiti: alcune istanze delle attività hanno avuto esito negativo, ma ciò non influisce sul risultato finale del processo. Per queste attività sono presenti istanze duplicate o nuovi tentativi che potrebbero riuscire in un secondo momento. |
Blu | In esecuzione: l'attività è in esecuzione. |
Bianco | Processo in attesa o ignorato: l'attività è in attesa di esecuzione o la fase è stata ignorata. |
Rosso | Operazione non riuscita: impossibile caricare l'attività. |
L'immagine seguente mostra i colori di stato verde, arancione e blu.
L'immagine seguente mostra i colori di stato verde e bianco.
L'immagine seguente mostra i colori di stato rosso e verde.
Nota
Il server cronologia Apache Spark consente la riproduzione per ogni processo completato, ma non consente la riproduzione per processi incompleti.
Zoom
Usare il pulsante di scorrimento del mouse per ingrandire e ridurre il grafico del processo, oppure selezionare Esegui zoom e adatta per adattarlo allo schermo.
Descrizioni comandi
Passare il puntatore sul nodo del grafico per visualizzare la descrizione comando quando sono presenti attività non riuscite e selezionare una fase per aprire la pagina relativa.
Nella scheda relativa al grafico del processo, per le fasi sono visualizzate una descrizione comando e una piccola icona se sono presenti attività che soddisfano le condizioni seguenti:
Condizione | Descrizione |
---|---|
Asimmetria dei dati | Dimensioni di lettura dei dati > dimensioni medie di lettura dei dati di tutte le attività in questa fase * 2 e dimensioni di lettura dei dati > 10 MB. |
Sfasamento dell'ora | Tempo di esecuzione > tempo di esecuzione medio di tutte le attività in questa fase * 2 e tempo di esecuzione > 2 minuti. |
Descrizione del nodo del grafico
Il nodo del grafico del processo visualizza le informazioni seguenti per ogni fase:
- ID
- Nome o descrizione
- Numero totale di attività
- Dati letti: la somma delle dimensioni di input e delle dimensioni dei dati casuali letti
- Scrittura dati: la somma delle dimensioni di output e delle dimensioni delle scritture di sequenze casuali
- Tempo di esecuzione: tempo tra l'ora di inizio del primo tentativo e l'ora di completamento dell'ultimo tentativo
- Conteggio righe: somma di record di input, record di output, record di lettura di sequenze casuali e record di scrittura di sequenze casuali
- Avanzamento
Nota
Per impostazione predefinita, il nodo del grafico del processo visualizza le informazioni sull’ultimo tentativo di ogni fase, ad eccezione del tempo di esecuzione della fase. Tuttavia, durante la riproduzione, il nodo del grafico mostra le informazioni su ogni tentativo.
Le dimensioni dei dati di lettura e scrittura sono pari a 1 MB = 1000 KB = 1000 * 1000 byte.
Inviare commenti
Per inviare feedback relativi ai problemi, fare clic su Invia feedback.
Limite del numero di fase
Per considerazioni sulle prestazioni, per impostazione predefinita il grafico è disponibile solo quando l'applicazione Spark ha meno di 500 fasi. Se è presente un numero eccessivo di fasi, l'operazione non riuscita restituirà un errore simile al seguente:
The number of stages in this application exceeds limit (500), graph page is disabled in this case.
Come soluzione alternativa, prima di avviare un'applicazione Spark, applicare la configurazione Spark seguente per aumentare il limite:
spark.ui.enhancement.maxGraphStages 1000
Si noti tuttavia che ciò può comportare prestazioni non ottimali della pagina e dell'API, perché le dimensioni del contenuto possono essere eccessive per il recupero e il rendering del browser.
Esplorare la scheda Diagnosi nel server cronologia Apache Spark
Per accedere alla scheda Diagnosi, selezionare un ID processo. Selezionare quindi Diagnosi nel menu degli strumenti per andare alla vista Diagnosi del processo. La scheda relativa alla diagnosi include Asimmetria dei dati, Sfasamento dell'ora e Analisi dell'utilizzo dell'executor.
Esaminare i valori di Asimmetria dei dati, Sfasamento dell'ora e Analisi dell'utilizzo dell'executor selezionando le rispettive schede.
Asimmetria dei dati
Quando si seleziona la scheda Asimmetria dei dati, sono visualizzate le attività asimmetriche corrispondenti in base ai parametri specificati.
Specificare i parametri: la prima sezione visualizza i parametri usati per rilevare Asimmetria dei dati. La regola predefinita è: i dati dell'attività letti rappresentano il triplo della media dei dati dell'attività letti e i dati dell'attività letti sono superiori a 10 MB. Se si desidera definire una regola personalizzata per le attività asimmetriche, è possibile scegliere i parametri. Le sezioni Fase asimmetrica e Car asimmetrico vengono aggiornate di conseguenza.
Fase asimmetrica: la seconda sezione visualizza le fasi che hanno attività asimmetriche che soddisfano i criteri specificati precedentemente. Se in una fase è presente più di un'attività asimmetrica, nella tabella delle fasi asimmetriche viene visualizzata soltanto l'attività con più asimmetria, ad esempio, i dati di dimensioni maggiori per l'asimmetria dei dati.
Grafico asimmetrie: quando viene selezionata una riga nella tabella delle fasi asimmetriche, il grafico delle asimmetrie visualizza più dettagli delle distribuzioni delle attività in base ai dati letti e al tempo di esecuzione. Le attività asimmetriche sono contrassegnate in rosso e le attività normali sono contrassegnate in blu. Il grafico visualizza fino a 100 attività di esempio e i dettagli dell'attività vengono visualizzati nel pannello inferiore destro.
Sfasamento dell'ora
La scheda Sfasamento dell'ora visualizza le attività asimmetriche in base al tempo di esecuzione.
Specificare i parametri: la prima sezione visualizza i parametri, che vengono usati per rilevare l'asimmetria dell'ora. I criteri predefiniti per il rilevamento dello sfasamento dell'ora sono: il tempo di esecuzione dell'attività è maggiore di tre volte rispetto al tempo medio di esecuzione e il tempo di esecuzione dell'attività è maggiore di 30 secondi. È possibile modificare i parametri in base alle esigenze. Fase asimmetrica e Grafico asimmetrie visualizzano le informazioni sulle fasi e sulle attività corrispondenti, proprio come nella scheda Asimmetria dei dati descritta precedentemente.
Selezionando Asimmetria dell'ora i risultati filtrati verranno visualizzati nella sezione Fase asimmetrica in base ai parametri impostati nella sezione Specificare i parametri. Selezionando un elemento nella sezione Fase asimmetrica verrà realizzata una bozza del grafico corrispondente nella sezione 3 e i dettagli delle attività vengono visualizzati nel pannello inferiore destro.
Analisi dell'utilizzo dell'executor
Ora, questa funzionalità è stata deprecata in Fabric. Se si vuole comunque usarla come soluzione alternativa, accedere alla pagina aggiungendo in modo esplicito "/executorusage" dietro il percorso "/diagnostic" nell'URL, come riportato di seguito: