Ich habe eine große Datei in hdfs bigfile.txt. Ich möchte die ersten 100 Zeilen davon in eine neue Datei auf hdfs kopieren. Ich habe versucht, den folgenden Befehl ein:Wie werden die ersten Zeilen einer großen Datei in hadoop in eine neue Datei kopiert?
hadoop fs -cat /user/billk/bigfile.txt |head -100 /home/billk/sample.txt
Es gab mir eine „Katze: nicht in der Lage Ausgabestrom zu schreiben“ Fehler. Ich bin auf Hadoop 1.
Gibt es andere Möglichkeiten, dies zu tun? (Anmerkung: Kopieren 1. 100 Linie auf lokale oder eine andere Datei auf hdfs ist OK)
die Probe lokal zu kopieren, verwenden Sie diese: hadoop fs -cat/path/to/hdfsfile | Kopf -100 | hadoop fs -get Pfad/zu/local/sample1 – Adrian
Wenn Sie die Ergebnisse lokal wollen, können Sie es einfach in eine Datei umleiten, anstatt durch hdfs hadoop fs -cat /user/billk/bigfile.txt | head -100> local/sample.txt – Scott
@Scott dies führt auch zu dem 'cat: unable to output stream' Problem –