====Hadoop HDFS mit Apache Fuse als "normales" Filesystem mounten===== Mit dem [[http://fuse.sourceforge.net/|Fuse]] Projekt lässt sich ein Hadoop HDFS als normales Filesystem mounten. === Installation === **Voraussetzung:**\\ Installierter Hadoop Client mit einer vollständigen Konfiguration um auf dem Cluster zuzugreifen. \\ Passendes Packet kann hier gefunden werden: http://pkgs.repoforge.org/fuse/ \\ Bei Cloudera ist es bereits dabei: #als root yum install hadoop-hdfs-fuse.x86_6 === Mounten === Mit dem Befehl "hadoop-fuse-dfs dfs://: " läßt sich das HDFS an die Maschine mounten. cat # als root # Konfiguration auslesen cat /etc/hadoop/conf/core-site.xml # Mounten hadoop-fuse-dfs hdfs://quickstart.cloudera:8020 /fuse/ ===Test === Der Test findet auf einer Cloudera VM mit relativ wenig Daten statt. #Daten: du . -h 150MB # #Kopieren mit "cp" # time cp *.* /fuse/user/gpipperr/ real 0m34.698s user 0m0.017s sys 0m0.771s # #Kopieren mit hdfs dfs # time hdfs dfs -put *.* /user/gpipperr/ real 0m20.413s user 0m9.473s sys 0m3.751s Damit ist "hdfs dfs" um ein gutes Drittel schneller beim Laden von Daten. Auch fällt auf das "ls" auf das mit fuse gemounteten Verzeichnis deutlich schneller (real 0m0.107s) ist als ein "hdfs dfs -ls" (real 0m3.410s) ist. Vermutlich benötigt "hdfs dfs" relativ lang um überhaupt zu starten. ==== Quellen ==== * https://wiki.apache.org/hadoop/MountableHDFS