HDFS
注:由学习Hadoop权威指南的
HDFS分布式文件系统
概念:
hadoop的分布式文件系统hdfs
hdfs思想:一次写入,多次读取是高效的,但是如果低延迟访问未必完全做得到,hdfs是为了大搞高数据吞吐量而设计,由于hdfs块默认为64M大小,这样减少了磁盘的寻址时间,这样硬盘的传输速度越快相应的数据传输速率就越快,这只是字面理解,当然如果任务特别少作业的运行速度可能就比预期要慢很多,当然我未做过实际的大规模的对比,所以这只能是笔记了,不过想想也大概是这个道理,呵呵,
名称节点和数据节点
这里名称节点作为管理者管理众多数据节点这些被管理者,名称节点安全与否至关重要,注意名称节点的备份(远程备份或者第二名称节点备份,后者不完全同步)
配置:
fs.default.name=hdfs://localhost设置默认文件系统
dfs.replication=1//设置HDFS副本保存数量,这里为1,伪分布式下设置其他数目会报出异常
命令:
以下为hadoopfs的一些命令,跟linux差不多,在具体使用中会学到一些hadoop的hdfs的知识
hadoop@ubuntu:/opt/hadoop-0.20.2$hadoopfs
Usage:javaFsShell
[-ls<path>]
[-lsr<path>]
[-du<path>]
[-dus<path>]
[-count[-q]<path>]
[-mv<src><dst>]
[-cp<src><dst>]
[-rm[-skipTrash]<path>]
[-rmr[-skipTrash]<path>]
[-expunge]
[-put<localsrc>...<dst>]
[-copyFromLocal<localsrc>...<dst>]
[-moveFromLocal<localsrc>...<dst>]
[-get[-ignoreCrc][-crc]<src><localdst>]
[-getmerge<src><localdst>[addnl]]
[-cat<src>]
[-text<src>]
[-copyToLocal[-ignoreCrc][-crc]<src><localdst>]
[-moveToLocal[-crc]<src><localdst>]
[-mkdir<path>]
[-setrep[-R][-w]<rep><path/file>]
[-touchz<path>]
[-test-[ezd]<path>]
[-stat[format]<path>]
[-tail[-f]<file>]
[-chmod[-R]<MODE[,MODE]...|OCTALMODE>PATH...]
[-chown[-R][OWNER][:[GROUP]]PATH...]
[-chgrp[-R]GROUPPATH...]
[-help[cmd]]
还有hdfs的几个类
FileSystem文件系统,提供了对hdfs文件系统文件或者目录的定位,打开资源流访问等
FSDataInputStream文件系统数据输入流FileSystem.open()returnFSdis
FSDataOutputStream
FileStatus文件状态fs.getFileStatus(Path);获取文件或者目录的属性状态
PathFilter与java的FileFilter类似