Necesito para la salida de mi hadoop resultado .el formato csv.
¿cómo puedo hacer esto?
Mi código :https://github.com/studhadoop/xml/blob/master/XmlParser11.java

debe simplemente incluir csvoutputFormat en mi código.
Estoy utilizando mapreduce API

myjob.sh

bin/hadoop jar /var/root/ALA/ala_jar/clsperformance.jar ala.clsperf.ClsPerf /user/root/ala_xmlrpt/Amrita\ Vidyalayam\,\ Karwar_Class\ 1\ B_ENG.xml  /user/root/ala_xmlrpt-outputshell4

bin/hadoop fs -get /user/root/ala_xmlrpt-outputshell4/part-r-00000 /Users/jobsubmit


cat /Users/jobsubmit/part-r-00000 /Users/jobsubmit/output.csv

SOLUCIÓN

ys me faltaba > en el gato

cat /Users/jobsubmit/part-r-00000> /Users/jobsubmit/output.csv

1 Comentario

  1. 15

    Puede utilizar TextOutputFormat. El valor predeterminado de la clave/valor de separador es un carácter de tabulación. Usted puede cambiar el separador por el establecimiento de la propiedad «mapred.textoutputformat.separatorText» en el controlador.

    conf.set("mapred.textoutputformat.separatorText", ",");
    • Necesito simplemente añadir este código en mi controlador , Estoy en lo cierto
    • Sí. Y shoulde ser el uso de «TextOutputFormat».
    • Ver el nombre de la propiedad debe ser «mapred.textoutputformat.separador» no «mapred.textoutputformat.separatorText»
    • Sí. mapreduce es bueno. Me acabo de dar cuenta que he mencionado el nombre de la propiedad equivocado en mi primera respuesta. Debería ser «mapred.textoutputformat.separador»
    • Pero para Formato CSV de texto irán entre comillas dobles y las comas y entero será con cita. Estoy en lo cierto?
    • He respondido a la cabecera de consulta relacionados en contra de la misma consulta. Sobre el formato del archivo CSV, tendrá la coma de separación, pero tampoco estoy segura si va a adjuntar los datos en comillas dobles. Usted puede tratar de un ejemplo y ver.
    • En realidad mi intención es hacer que la salida de hadoop resultado .csv.bcoz necesito para visualizar estos datos.Así, en rapidminer podemos importar los datos en formato csv. Así que estoy tratando de hacer mi salida como archivo csv. creo que debe ser como el .archivo csv.No estoy seguro.Cualquier idea.
    • Es allí cualquier manera de hacer mi parte-00000 como parte-00000.archivo csv
    • Creo que no es posible crear un archivo con «.csv» la extensión de un trabajo MapReduce. Usted necesita tener un flujo de trabajo secuencia de comandos que se 1.) Presentar el Trabajo MapReduce 2.) Que se va a extraer la salida de HDFS mediante comandos de shell 3.) Combinar juntos, cambiar el nombre como «.csv» y colocar en un directorio donde la herramienta de visualización puede tener acceso al archivo final.
    • oh ..como que.
    • u puede jst me dan un ejemplo a hacer lo mismo?
    • hadoop jar <trabajo jar>.jar parámetro1 parámetro2 hadoop fs -get <HDFS Camino a la salida de trabajo>/parte-r-* <sistema de ficheros local Path> cat parte-r-* > <Nombre del Archivo de Salida>.csv
    • Tiene tres líneas en un script de shell decir myjob.sh chmod la secuencia de comandos ejecutables y de ellos ejecute la secuencia de comandos en el símbolo del sistema de Linux
    • hadoop jar <trabajo jar>.jar yourJobParameter1 yourJobParameter2
    • hadoop fs -get <HDFSPathToJobOutput>/parte-r-* <LocalFilesystemPath>
    • cat <LocalFilesystemPath>/parte-r-* > <OutputFileName>.csv
    • ys ejecutado con errores, pero cuando revisé el archivo en mi sistema de archivos local es La exhibición de «el archivo CSV estaba vacío y no podía ser importados». ¿por qué es así.
    • whwn el shell script que se está ejecutando es la visualización de la salida de bt de mi salida.csv archivo está vacío. mi salida es como separados por comas valor.es que la razón.
    • Comparte tu script. Voy a comprobar si hay algún problema.
    • ys pegado encima.
    • La redirección de la falta en el tercer comando cat /Users/jobsubmit/part-r-00000 > /Users/jobsubmit/output.csv Nota «>» en el comando, que puso el ets de salida para el archivo. También el uso de la «parte-r-*» de manera que si hay varios archivos están ahí, todos los archivos son tomados en consideración.
    • sí que me perdí
    • Gracias por tu gran momento.
    • u r Bienvenida. Me alegro de que eso ayudó. Marca esto como la respuesta a ayudar a otros pensionistas con consultas similares.
    • Soy capaz de snd este archivo para rapidminer para la visualización:stackoverflow.com/questions/16352004/…
    • Los detalles no son claros. ¿Puedes explicar un poco más
    • permítanos continuar esta discusión en el chat
    • Quiero trazar la gráfica para este tipo de datos.cómo voy a hacer esto(Rapidminer) alguna idea
    • cómo herramienta de visualización puede tener acceso al archivo final.
    • stackoverflow.com/questions/16381446/…
    • Sí, usted puede definir su salida de extensión! En su reductor de velocidad, el uso de MultipleOutputs. Este método de grabación es lo que usted necesita. (Lo estoy usando en producción!): hadoop.apache.org/docs/stable/api/org/apache/hadoop/mapreduce/…
    • pero aún así terminar en r0000
    • sí, usted no puede deshacerse de varios rxxx archivos porque cada reductor crea por su propia cuenta. Sin embargo, puede combinar estos archivos después de que se complete el trabajo

Dejar respuesta

Please enter your comment!
Please enter your name here