一、HDFS的架构
二、HDFS的优缺点
三、HDFS的基本组成
NameNode, SecondaryNameNode及DataNode
NameNode
namenode下 edit log(操作日志)和fsimage(元信息,即最终剩下的信息)
DataNode
DataNode的机架感知策略(重点)
一拖三
这个就是一拖三
默认为副本数为3; HDFS上的文件对应的数据块保存有多个副本,且提供容错机制,副本丢失或宕机时自动恢复
第一个副本:放置在上传文件的数据节点;如果是集群外提交,则随机挑选一台磁盘不太满、CPU不太忙的节点。
第二个副本:放置在与第一个副本不同的机架的节点上。
第三个副本:与第二个副本相同机架的其他节点上。
更多副本:随机节点
SecondNameNode
HDFS的三种访问方式
1.通过Web Console
NameNode web的端口号为50070
SecondaryNameNode web的端口号为50090
四、HDFS基本操作
1.创建目录
hdfs dfs -mkdir [-p] <path>
2.列出文件和目录信息
hdfs dfs -ls [-d][-h][-R]<path>
3.查看存储系统信息
hdf dfsadmin -report[-live][-dead][-decommission]
4.上传文件到HDFS
1)hdfs dfs -put [-f][-p][-l]<localsrc>...<dst>
2)hdfs dfs -copyFromLocal [-f][-p][-l]<localsrc>...<dst>
3)hdfs dfs -moveFromLocal <localsrc>...<dst>(剪切)
5.查看文件内容
1)hdfs dfs -cat [-ignoreCrc] <src>...
2)hdfs dfs -text [-ignoreCrc] <src>...
3)hdfs dfs -tail [-f] <file>
6.合并小文件上传
hdfs dfs -appendToFile <localsrc>...<dst>
7.合并HDFS一个目录下所有文件并下载到本地
hdfs dfs -getmerge[-nl] <src> <localdst>
8.下载文件到本地文件系统
hdfs dfs -get [-p][-ignoreCrc][-crc]<src>...<localdst>
hdfs dfs -copyToLocal [-p][-ignoreCrc][-crc]<src>...<localdst>
9.删除文件和目录
hdfs dfs [-rm [-f][-r][-R][-skopTrash] <src> ...]
hdfs dfs [-rmdir[--ignore-fail-on-non-empty]<dir>...]