基本命令:
hadoop fs -help
上传: hadoop -fs -put xxx.txt hdfs://nn:9000/
下载:-get
新建目录: -mkdir
追加内容:-appenToFile (hdfs里文件内容不可修改,但可追加)
修改权限:-chmod 等 (hadoop的用户检查很弱,不管你修改的用户是否存在都会实现修改)
从本地复制:-coptFromLocal
删除文件: -rm [-f] [-r|-R] 递归删除 (-rmdir 是删除空目录 )
查看尾部: -tail [-f] (可用于查看一些日志文件的更新)
查看hdfs总空间: -df
查目录下文件的大小: -du [-s]
工作机制:
下载文件:
客户端找NameNode,得到NameNode返回的存储位置之后,客户端去dataNode里面找
上传文件:
1.客户端向NameNode请求上传文件
2.NameNode核实该文件不存在后,同意客户端请求
3.客户端把文件分块,并按块存入所分配的DataNode里
副本:一本有三个,在客户端把块传给DataNode之后,由DataNode自己复制两份给另外两个DataNode。
第一个副本:在运行客户端的节点上
第二个副本:放到另外一个机架上<