Per un dato lavoro MR, ho bisogno di produrre due file di output. Un file dovrebbe essere l'uscita del Mapper Un altro file dovrebbe essere l'uscita del riduttore (che è solo un'aggregazione di sopra Mapper)È possibile stampare l'output di Mapper e riduttore per un singolo lavoro in Hadoop Mapreduce
Posso avere entrambi il mapper e riduttore di uscita essere scritto in un unico lavoro?
EDIT:
In Job 1 (solo Mapper fase) di uscita contiene 20 campi in una singola riga, che deve essere scritto HDFS (file1). In Job 2 (Mapper n reducer) Mapper prende input dall'output di Job1, cancella pochi campi per portare in un formato standard (solo 10 campi) e passarlo al riduttore che scrive file2.
Ho bisogno sia di file1 che di file2 in hdf ... Ora il mio dubbio è che in Job1 il programma di scrittura possa scrivere i dati in hdf come file1, quindi modificare gli stessi dati e passarli a riduttore.
PS: A partire da ora sto utilizzando 2 lavori con meccanismo di concatenamento. Il primo lavoro contiene solo il mapper, il secondo lavoro contiene il mappatore e il riduttore.
Suppongo che sia possibile utilizzare un singolo lavoro MR per produrre il risultato. Stai facendo delle trasformazioni nel Mapper del secondo lavoro, se così non fosse, quindi passa l'output di Mapper nel Riduttore in un singolo lavoro MR. – YoungHobbit
I il secondo mappatore sto solo modificando il numero di colonne per una singola riga .. Ad esempio: output di mapper (file1) contiene 20 colonne, l'output di mapper2 contiene 7 colonne. Le righe duplicate da mapper2 verranno rimosse in riduttore. – Abhinay
Se è possibile farlo nel primo mapper di processi, farlo lì e unire i lavori. Altrimenti, per favore informazioni dettagliate su entrambi i lavori. – YoungHobbit