2012-04-05 6 views
0

Ich bin erfolgreich parallel FPGroth Algorithmus von Apache Mahout oben auf Hadoop ausgeführt. Aber die Textdateien generetaed Ausgabe sind nicht lesbar, wie Sie untenKann Mahout Ausgabe von PFPGrowth nicht lesen

SEQorg.apache.hadoop.io.TextDorg.apache.mahout.fpm.pfpgrowth.convertors.string.TopKStringPatterns3G9 sehen y' e 1 2 1 t 5 1 t 4 1 1 4227 3 1 1 3476 t 1 1340 h 1 5795 N 1 2701 K 1 3610 @ 1 2106 ...

Ru nning RecommenderJob und ItemSimilarityJob mit der gleichen Eingabedatei erzeugt korrekte Ausgabedateien.

Irgendwelche Ideen?

Antwort

2

Diese Ausgabedateien sind Sequenzdateien, keine Textdateien. Sie enthält Schlüssel/Wert-Paare vom Typ <Text, TopKStrinPatterns>

Sie hadoop bekommen können die Sequenzdateien und gibt die Textversionen dieser Objekte mit dem fs-Shell-Befehl, kombiniert mit -Text und -libjars zu lesen:

hadoop fs -libjars /path/to/mahout/lib.jar -text /path/to/hdfs/output/part* 

Wenn Sie diese Dateien wollen, um Text zu sein, anstatt Sequenz dann müssen Sie den Treiber ändern, die die Aufgabe ausgeführt wird, und den Job wechseln TextOutputFormat zu verwenden, anstatt SequenceFileOutputFormat:

// job.setOutputFormat(SequenceFileOutputFormat.class); 
job.setOutputFormat(TextOutputFormat.class);