2012-11-15 11 views
7

Gibt es ln -s in Hadoop HDFS?Gibt es ln in Hadoop HDFS

Zum Beispiel:

Ich habe 10 Dateien in HDFS

/user/hadoop/input, die 1.txt, 2.txt ... 10.txt ist

Eine andere dir in HDFS ist /user/hadoop/test

Ich möchte nur Kopie 1 Datei /user/hadoop/input/1.txt-/user/hadoop/test/1.txt .

Der einfachste Weg ist die Verwendung hadoop dfs -cp /user/hadoop/1.txt /user/hadoop/test.

Aber es kostet mehr Zeit und Speicherplatz. Gibt es einen Weg wie Shell wie hadoop dfs -ln /user/hadoop/1.txt /user/hadoop/test/1.txt?

+0

Es gibt symbolische Links in einer etwas neueren Version, welche Version verwenden Sie? –

+0

Die Version meines Hadoops ist 1.0.3 – pensz

Antwort

6

HDFS unterstützt symbolische Links. Überprüfen Sie 1, 2, 3, 4 für weitere Details. Es kann also mit der Java-API durchgeführt werden, ist aber nie auf eine CLI gestoßen.

+0

Thxs für Ihre Antwort. Ich habe gestern auch die Java API gefunden. Gibt es irgendwelche Tools, die die API verwenden können? Ich will mich nicht wiederholen :) – pensz

+3

Es ist ziemlich beschissen gibt es keine CLI Weg, dies zu tun :( – rjurney

+3

[HADOOP-10020] (https://issues.apache.org/jira/browse/HADOOP-10020) und [ HADOOP-10052] (https://issues.apache.org/jira/browse/HADOOP-10052) hat Symlinks seit 2.2.0 deaktiviert, es heißt "temporär" bis 2.3.0, aber ich sehe, dass es in 2.5.0 immer noch deaktiviert ist -cdh5.3.0 Es ist ziemlich enttäuschend, dass cloudera gerade ein Feature entfernt hat – lyomi

Verwandte Themen