Foro Formación Hadoop
Comando hadoop vs hdfs
Hola,
Veo que hay dos formas de conectarse al HDFS, via comando hadoop fs o bien hdfs dfs. Cual se recomienda de los dos? Parece que el primero es "deprecated".
Gracias
Alex
Buenos días Alexandre,
En el siguiente artículo se introduce muy bien la diferencia de los dos comandos:
"La principal diferencia radica en que FS indica un sistema de archivos genérico que puede apuntar a cualquier sistema de archivos, como FS locales, HFTP FS, S3 FS y otros (incluido HDFS). Sin embargo, el comando “hdfs” es específico para HDFS. Por ejemplo, cuando se usa “hadoop fs” se pueden copiar, mover, obtener… ficheros entre un sistema de archivos local y HDFS, o cualquier otro sistema de ficheros, y viceversa pero cuando se especifica DFS, mediante “hdfs dfs” el filesystem debe estar en dicho formato obligatoriamente.
Se puede decir por tanto, que el uso del comando “hadoop fs” es de uso más genérico mientras que el uso de “hdfs dfs” es específico para este filesystem en concreto. Por esto, el comando “hadoop fs” toma como parámetros URIs del tipo “scheme://autority/path”, es decir, hay que especificarle el tipo de filesystem (scheme) y sino se especifica se toma HDFS por defecto (autority también es opcional).
Esto queda más patente aún cuando se intenta ejecutar el comando “hadoop dfs“, el cual era usado en versiones anteriores y que ya se ha marcado como obsoleto y recomienda el uso de hdfs para interactuar con este tipo de filesystem:
1
2
3
|
hadoop dfs DEPRECATED: Use of this script to execute hdfs command is deprecated. Instead use the hdfs command for it. |
Para especificar un directorio HDFS se debe hacer mediante hdfs://namenodehost/parent/child o simplemente mediante /parent/child si la configuración apunta a hdfs://namenodehost."
Artículo completo: http://www.happyminds.es/apache-hadoop-diferencia-entre-hadoop-fs-y-hdfs-dfs/#sthash.LwCAYFC8.dpbs
Social networks