2012-01-17 17 views

Respuesta

5

No hay mucha flexibilidad en el nombre del archivo de salida del trabajo MR. Use las subclases del MultipleOutputFormat.

Tiene que implementarse el método MultipleOutputFormat#generateFileNameForKeyValue, ignore las entradas de este método y devuelva una cadena en el patrón date + -part-r- + mapred.task.partition. mapred.task.partition es un int, por lo que tiene que rellenarse previamente con 0 de manera apropiada.

+0

¿No hay manera fácil, en una de las versiones anteriores supongo que tuvimos la opción como FileOutputFormat.setOutputName (JobConf trabajo, nombre de cadena); Además, mi clase de reductor ya está ampliando Reducer, por lo que se deberá ampliar otra clase. – RFT

+0

No veo eso en la API de Hadoop. –

+0

Ok, pero como mencioné mi clase de reducción ya está ampliando otra clase, ¿puedo incluir una clase estática y hacer que esa clase amplíe MultipleOutputFormat y luego llamar a la clase desde algún lugar? – RFT

Cuestiones relacionadas