OK,如今是想要学习一下hdfs的api和shell的用法。
首先,须要了解的是hdfs是什么?它有什么特点?它能用来做什么?
hdfs:
使用方式:hdfs --config confdir command
dfs执行一个文件系统的命令。在hadoop支持的文件系统中。
namenode -format 格式化dfs文件系统
secondarynamenode :执行DFS的第二个namenode
namenode:执行DFS namenode
journalnode: 执行DFS的日志节点
datanode:执行DFS data节点
dfsadmin: 执行DFS管理client
haadmin:执行DFS 高可用管理client
fsck:执行DFS文件系统检查功能
balancer:执行集群负载均衡功能
jmxget:从namenode或者datanode中获得JMX到处的值(这个事实上我不懂)
从结构来说:namenode,secondnamenode,journalnode这是架构。
而hdfs dfs当中涉及的就是详细的针对Hdfs的操作命令了。
我的疑问有非常多:
1:hdfs中的权限问题是怎样划分的?我看到hdfs中也有组,文件系统树也是一个分叉型的,上面是一个/,差点儿和Linux的文件系统是一样的。
2:是否能使用命令行查看,各个datanode节点使用的本地的文件系统(ext4或者xfs文件系统中使用的路径)。
3:hdfs内部的文件树的容量是怎么分布的?
比方说你在里面建立了一个文件夹,空间是怎么分布的?须要分区吗?
(使用hdfs dfs -ls -R /能够查看hdfs内的文件树的全部内容,
关于我想要学习的东西能够通过: hdfs dfs命令看到内部的子命令)
这能够看到一个总体的架构,还有namenode的url,总体的容量,管理节点的内容。
(我感觉有问题,linux下的命令看到的是分区的内容。可是这里看到的却是一个整体的大小??????,
使用hdfs dfs -df -h /idd命令看到的内容也是一样。这是为什么,我觉得这不合理啊,应该看到的是内部的文件夹内容才对啊,为什么看到的还是一个总体的hdfsURL和大小????)
这能够看出每一个文件夹使用的空间大小。
我是否能觉得hdfs内部设计的文件系统机制没有linux的好?毕竟仅仅是一个另类的东西