Talend - Riduci mappa

Nel capitolo precedente abbiamo visto come Talend lavora con i Big Data. In questo capitolo, vediamo come utilizzare Map Reduce con Talend.

Creazione di un lavoro Talend MapReduce

Impariamo come eseguire un lavoro MapReduce su Talend. Qui eseguiremo un esempio di conteggio parole MapReduce.

A tal fine, fare clic con il pulsante destro del mouse su Job Design e creare un nuovo lavoro - MapreduceJob. Menziona i dettagli del lavoro e fai clic su Fine.

Aggiunta di componenti al lavoro MapReduce

Per aggiungere componenti a un lavoro MapReduce, trascina e rilascia cinque componenti di Talend: tHDFSInput, tNormalize, tAggregateRow, tMap, tOutput dal pallet alla finestra del designer. Fare clic con il tasto destro su tHDFSInput e creare il collegamento principale a tNormalize.

Fare clic con il tasto destro su tNormalize e creare il collegamento principale a tAggregateRow. Quindi, fai clic con il tasto destro su tAggregateRow e crea il collegamento principale a tMap. Ora, fai clic con il tasto destro su tMap e crea il collegamento principale a tHDFSOutput.

Configurazione di componenti e trasformazioni

In tHDFSInput, seleziona il cloud di distribuzioneera e la sua versione. Notare che l'URI Namenode deve essere "hdfs: //quickstart.cloudera: 8020" e il nome utente deve essere "cloudera". Nell'opzione del nome file, fornire il percorso del file di input al lavoro MapReduce. Assicurati che questo file di input sia presente su HDFS.

Ora, seleziona il tipo di file, il separatore di riga, il separatore di file e l'intestazione in base al file di input.

Fare clic su modifica schema e aggiungere il campo "riga" come tipo di stringa.

In tNomalize, la colonna da normalizzare sarà riga e il separatore articolo sarà uno spazio bianco -> "". Ora, fai clic su modifica schema. tNormalize avrà una colonna di riga e tAggregateRow avrà 2 colonne di parole e conteggio parole come mostrato di seguito.

In tAggregateRow, inserisci la parola come colonna di output nell'opzione Raggruppa per. Nelle operazioni, inserisci conteggio parole come colonna di output, funzione come conteggio e posizione della colonna di input come riga.

Ora fai doppio clic sul componente tMap per accedere all'editor della mappa e mappare l'input con l'output richiesto. In questo esempio, la parola è mappata con la parola e il conteggio delle parole è mappato con il conteggio delle parole. Nella colonna delle espressioni, fare clic su […] per accedere al generatore di espressioni.

Ora, seleziona StringHandling dall'elenco delle categorie e dalla funzione UPCASE. Modifica l'espressione in "StringHandling.UPCASE (row3.word)" e fai clic su OK. Mantieni row3.wordcount nella colonna dell'espressione corrispondente a wordcount come mostrato di seguito.

In tHDFSOutput, connettiti al cluster Hadoop che abbiamo creato dal tipo di proprietà come repository. Tieni presente che i campi verranno compilati automaticamente. In Nome file, fornire il percorso di output in cui si desidera memorizzare l'output. Mantieni l'azione, il separatore di riga e il separatore di campo come mostrato di seguito.

Esecuzione del lavoro MapReduce

Una volta completata con successo la configurazione, fare clic su Esegui ed eseguire il lavoro MapReduce.

Vai al tuo percorso HDFS e controlla l'output. Nota che tutte le parole saranno in maiuscolo con il loro numero di parole.