Hadoop entradas múltiples

Estoy usando hadoop map reduce y quiero calcular dos archivos. Mi primera iteración Map / Reduce me está dando un archivo con un número de ID de par como este:

A 30
D 20

Mi objetivo es usar esa ID del archivo para asociarla con otro archivo y tener otra salida con un trío: ID, Number, Name, como este:

A ABC 30
D EFGH 20

Pero no estoy seguro de si usar Map Reduce es la mejor manera de hacerlo. ¿Sería mejor, por ejemplo, usar un lector de archivos para leer el segundo archivo de entrada y obtener el nombre por ID? ¿O puedo hacerlo con Map Reduce?

Si es así, estoy tratando de averiguar cómo. Probé una solución MultipleInput:

MultipleInputs.addInputPath(job2, new Path(args[1]+"-tmp"),
    TextInputFormat.class, FlightsByCarrierMapper2.class);
MultipleInputs.addInputPath(job2, new Path("inputplanes"),
    TextInputFormat.class, FlightsModeMapper.class); 

Pero no se me ocurre ninguna solución para combinar los dos y obtener el resultado que quiero. Lo que tengo ahora es simplemente darme la lista como este ejemplo:

A ABC
A 30
B ABCD
C ABCDEF
D EFGH
D 20

Después de mi Last Reduce recibo esto:

N125DL  767-332
N125DL  7   , 
N126AT  737-76N
N126AT  19  , 
N126DL  767-332
N126DL  1   , 
N127DL  767-332
N127DL  7   , 
N128DL  767-332
N128DL  3

Quiero esto: N127DL 7 767-332. Y también, no quiero los que no se combinan.

Y esta es mi clase reducida:

clase pública FlightsByCarrierReducer2 extiende Reducer {

String merge = "";
protected void reduce(Text token, Iterable<Text> values, Context context) 
                            throws IOException, InterruptedException {

    int i = 0;  
    for(Text value:values)
    {
        if(i == 0){
            merge = value.toString()+",";
        }
        else{
            merge += value.toString();
        }
        i++;
    }

        context.write(token, new Text(merge));

}

}

Actualizar:

http://stat-computing.org/dataexpo/2009/the-data.html Este es el ejemplo que estoy usando.

Estoy intentando con: TailNum y Canceled, que es (1 o 0) obtener el nombre del modelo que corresponde al TailNum. Mi archivo con model tiene un TailNumb, Model y otras cosas. Mi salida actual es:

N193JB ERJ 190-100 IGW

N194DN 767-332

N19503 EMB-135ER

N19554 EMB-145LR

N195DN 767-332

N195DN 2

Primero viene la llave, segundo el modelo, las llaves que tienen vuelos cancelados, aparece debajo del modelo

Y me gustaría una clave trío, número de modelo cancelado, porque quiero un número de cancelaciones por modelo

Respuestas a la pregunta(2)

Su respuesta a la pregunta