Pregunta

Tengo un archivo secuencial que tiene el par de tipos de valores clave "org.apache.hadoop.typedbytes.typedbytesswritable" , Tengo que proporcionar este archivo como información al trabajo de Hadoop y tengo que procesarlo solo en el mapa. Quiero decir que no tengo que hacer nada que necesite reducir.

1) ¿Cómo especificaré el FileInputFormat como secuencial?

2) ¿Cuál será la firma de la función del mapa?

3) ¿Cómo obtendré la salida del mapa en lugar de reducir?

¿Fue útil?

Solución

1) ¿Cómo especificaré el FileInputFormat como secuencial?

Selecciona el SecuenceFileaseBinaryInputFormat como el formato de entrada. Aquí está el código para la clase de secuenceFileaseBinaryInputFormat.

Aquí está el código

JobConf conf = new JobConf(getConf(), getClass());
conf.setInputFormat(SequenceFileAsBinaryInputFormat.class);

2) ¿Cuál será la firma de la función del mapa?

El mapa se invocaría con un bytesswritable como tipos de clave y valor.

3) ¿Cómo obtendré la salida del mapa en lugar de reducir?

Selecciona el mapred.reduce.tasks propiedad a 0. La salida del mapa será la salida final del trabajo.


Además, eche un vistazo al SecuenceFileExteExtInputFormat. El mapa se invocaría con texto como tipos de clave y valor.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top