- 文件操作
(1) 列出HDFS下的文件
hdfs dfs -ls /
(2) 列出HDFS文件下名为users的文档中的文件
hdfs dfs -ls /users
(3) 上传文件
将hadoop目录下的test01文件上传到HDFS上并重命名为test02:
hdfs dfs -put test01 /test02
(4) 文件被复制到本地系统中
将HDFS中的test01 文件复制到本地系统并命名为test02 :
hdfs dfs -get /test01 test02
(5) 删除文档
删除HDFS下名为 test01的文档:
hdfs dfs -rmr /test01
(6) 查看文件
查看HDFS下 test021文件中的内容:
hdfs dfs -cat /test02
(7) 建立目录
hdfs dfs -mkdir /user/test_examples(目录/目录名)
只能一级一级的建目录。
(8) 复制文件
hdfs dfs -copyFromLocal 源路径 路径
(9)通过Hadoop命令把两个文件的内容合并起来
hdfs dfs -getmerge 位于hdfs中的原文件(里面有多个文件) 合并后的文件名
例如:
hdfs dfs -getmerge /SogouResult.txt CombinedResult
注:合并后的文件位于当前目录,不在hdfs中,是本地文件
2. 管理与更新
(1) 执行基本信息
查看HDFS的基本统计信息:
hdfs dfsadmin -report
(2) 退出安全模式
NameNode在启动时会自动进入安全模式。安全模式是NameNode的一种状态,在这个阶段,文件系统不允许有任何修改。
系统显示Name node in safe mode,说明系统正处于安全模式,这时只需要等待十几秒即可,也可通过下面的命令退出安全模式:
hdfs dfsadmin -safemode leave
(3) 进入安全模式
在必要情况下,可以通过以下命令把HDFS置于安全模式:
hdfs dfsadmin -safemode enter
(4)节点添加
添加一个新的DataNode节点,先在新加节点上安装好Hadoop,要和NameNode使用相同的配置(可以直接从NameNode复制),修改 HADOOPHOME/conf/master文件,加入NameNode主机名。然后在NameNode节点上修改 H A D O O P H O M E / c o n f / m a s t e r 文 件 , 加 入 N a m e N o d e 主 机 名 。 然 后 在 N a m e N o d e 节 点 上 修 改 HADOOP_HOME/conf/slaves文件,加入新节点名,再建立新加节点无密码的SSH连接,运行启动命令为:
start-all.sh
(5)负载均衡
HDFS的数据在各个DataNode中的分布可能很不均匀,尤其是在DataNode节点出现故障或新增DataNode节点时。新增数据块时NameNode对DataNode节点的选择策略也有可能导致数据块分布不均匀。用户可以使用命令重新平衡DataNode上的数据块的分布:
start-balancer.sh