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管理客戶端
haadmin:運行DFS 高可用管理客戶端
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的好?畢竟只是一個另類的東西