Ricerca…


introduzione

La cosa fondamentale da ricordare qui è che il debug di un lavoro MR Hadoop sarà simile a qualsiasi applicazione debugata in Eclipse.

Un debugger o strumento di debug è un programma per computer che viene utilizzato per testare e eseguire il debug di altri programmi (il programma "target"). È molto utile specialmente per un ambiente Hadoop in cui c'è poco margine di errore e un piccolo errore può causare una perdita enorme.

Osservazioni

Questo è tutto ciò che devi fare.

Passi per la configurazione

Come saprai, Hadoop può essere eseguito nell'ambiente locale in 3 diverse modalità:

  1. Modalità locale
  2. Modalità pseudo distribuita
  3. Modalità completamente distribuita (cluster)

In genere eseguirai la configurazione locale di hadoop in modalità Pseudo distribuita per sfruttare HDFS e Map Reduce (MR). Tuttavia, non è possibile eseguire il debug dei programmi MR in questa modalità poiché ogni attività Map / Reduce verrà eseguita in un processo JVM separato, pertanto è necessario tornare alla modalità Locale in cui è possibile eseguire i programmi MR in un'unica procedura JVM.

Ecco i passaggi rapidi e semplici per eseguire il debug di questo nel tuo ambiente locale:

  1. Esegui hadoop in modalità locale per eseguire il debug in modo che le attività di mapper e riduttore vengano eseguite in una JVM singola anziché in JVM separate. Sotto i passaggi ti aiutano a farlo.

  2. Configura HADOOP_OPTS per abilitare il debug, quindi quando esegui il tuo lavoro Hadoop, aspetterà che il debugger si connetta. Di seguito è riportato il comando per eseguire il debug della stessa sulla porta 8080.

(export HADOOP_OPTS = "- agentlib: jdwp = transport = dt_socket, server = y, suspend = y, address = 8008")

  1. Configura il valore fs.default.name in core-site.xml nel file: /// da hdfs: //. Non utilizzerai hdf in modalità locale.

  2. Configura il valore mapred.job.tracker in mapred-site.xml su local. Questo istruirà Hadoop a eseguire le attività MR in una singola JVM.

  3. Crea la configurazione di debug per Eclipse e imposta la porta su 8008 - roba tipica. Per questo andare alle configurazioni del debugger e creare un nuovo tipo di configurazione Remote Java Application e impostare la porta come 8080 nelle impostazioni.

  4. Esegui il tuo lavoro hadoop (sarà in attesa che il debugger si connetta) e quindi avvii Eclipse in modalità debug con la configurazione di cui sopra. Assicurati di mettere prima un punto di interruzione.



Modified text is an extract of the original Stack Overflow Documentation
Autorizzato sotto CC BY-SA 3.0
Non affiliato con Stack Overflow