我不是文件系统工作原理方面的Maven,但这个问题可以帮助我澄清一些模糊的概念。hdfs如何写入物理磁盘?我知道hdfs在ext3文件系统磁盘上运行(通常)。这些文件系统的块大小远远小于hdfs块大小。因此,如果我在写一个128MB的逻辑hdfs块,磁盘可能会存储更小的物理块。hdfs是否确保这些物理块是连续的(连续块增加了fs吞吐量,因为它最小化了寻道时间?hdfs如何提供高吞吐量?
alen0pnh1#
据我所知,hdfs并不关心运行它的物理文件系统。我在几个不同的文件系统上安装了hadoop,例如,我还使用了solariszfs。hadoop/hdfs的块作为普通文件写在每个数据节点上。namenode在os文件系统中扮演inode或fat的角色。hdfs是每个数据节点上物理文件系统之上的一层。只需列出数据节点上的目录内容,就可以列出hadoop/hdfs文件系统中存储的块:
/srv/hadoop/hadoop_data/hdfs/datanode/current/BP-1458088587-192.168.1.51-1394008575227/current/finalized$ ls -alh ./blk_1073741838 -rw-r--r-- 1 hadoop hadoop 1.4M Mar 6 10:55 ./blk_1073741838
1条答案
按热度按时间alen0pnh1#
据我所知,hdfs并不关心运行它的物理文件系统。我在几个不同的文件系统上安装了hadoop,例如,我还使用了solariszfs。
hadoop/hdfs的块作为普通文件写在每个数据节点上。namenode在os文件系统中扮演inode或fat的角色。hdfs是每个数据节点上物理文件系统之上的一层。
只需列出数据节点上的目录内容,就可以列出hadoop/hdfs文件系统中存储的块: