Hadoop - Schreiben in HBase direkt vom Mapper

8

Ich habe einen Haddop-Job, dessen Ausgabe in HBase geschrieben werden sollte. Ich brauche keinen Reduzierer, die Art von Zeile, die ich einfügen möchte, wird im Mapper festgelegt.

Wie kann ich TableOutputFormat verwenden, um dies zu erreichen? Von allen Beispielen, die ich gesehen habe, ist die Vermutung, dass der Reduzierer derjenige ist, der das Put erzeugt, und dass TableMapper nur zum Lesen aus der HBase-Tabelle dient.

In meinem Fall ist die Eingabe HDFS, die Ausgabe wird an eine bestimmte Tabelle übergeben, ich kann nichts in TableMapReduceUtil finden, das mir dabei helfen kann.

Gibt es da draußen ein Beispiel, das mir dabei helfen kann?

Übrigens, ich benutze die neue Hadoop API

    
yosi 16.06.2012, 08:17
quelle

2 Antworten

7

Dies ist das Beispiel für das Lesen von Dateien und das Einfügen aller Zeilen in Hbase. Dieses Beispiel stammt aus "Hbase: The definitive guide" und Sie können es im Repository finden. Um es einfach zu klonen repo auf Ihrem Computer:

%Vor%

In diesem Buch finden Sie auch alle Erklärungen zum Code. Aber wenn etwas für Sie unverständlich ist, zögern Sie nicht zu fragen.

%Vor%     
wonsky 16.06.2012 10:08
quelle
1

Sie müssen nur den Mapper das Paar ausgeben lassen. OutputFormat gibt nur an, wie die Ausgabe-Schlüsselwerte beibehalten werden. Es bedeutet nicht unbedingt, dass die Schlüsselwerte vom Reducer kommen. Sie müssten im Mapper so etwas tun:

%Vor%     
Hari Menon 16.06.2012 08:25
quelle

Tags und Links