Ich schreibe ein Shell-Skript, um Daten in Hadoop zu schreiben, sobald sie erzeugt werden. Ich kann ssh zu meinem Master-Knoten, kopieren Sie die Dateien in einen Ordner dort und dann in hadoop. Ich suche nach einem Shell-Befehl, um die Datei auf den lokalen Datenträger auf dem Master-Knoten zu kopieren. SSH-Verbindung bereits Setup mit den Tasteneine Remote-Datei in Hadoop setzen, ohne sie auf die lokale Festplatte zu kopieren
scp test.txt [email protected]:/folderName/
Ich habe besser zu erklären, was ich brauche, kann hier unten finden, was ich bisher habe:
1) kopieren Sie die Datei auf der lokalen Festplatte des Master-Knoten. Daher ist kein Passwort erforderlich.
2) Ich kann ssh verwenden, um remote auf die hadoop ausführen setzen Befehl:
ssh [email protected] "hadoop dfs -put /folderName/test.txt hadoopFolderName/"
was ich suche ist, wie Rohr/kombinieren diese beiden Schritte in ein und die lokale Kopie der Datei überspringen auf lokale Festplatte von MasterNode.
dank
Mit anderen Worten, ich mag mehr Pipe-Befehl in eine Weise, die ich kann
Piping-Problem ist gelöst. Die Ausführung von Piping ist jedoch wesentlich langsamer als das Kopieren von Dateien zuerst auf die lokale Festplatte des Master-Knotens und das anschließende Kopieren dieser Dateien nach Hadoop. Irgendeine Idee? – reza