通过hadoop访问数据?一步一步解释

时间:2012-10-22 09:39:37

标签: hadoop hdfs

我想了解在需要通过HDFS访问数据时发生的每一步。在哪里可以找到HDFS上的写/读操作的逐步说明。

我很清楚namenode包含特定于文件系统的元数据。但我想知道namenode上存储的数据究竟是什么。这是我的猜测: 当各个数据节点使用由它们托管的各个块的块信息更新namenode时,在它们启动时,namenode只具有文件名(具有完整的目录结构),其中存储有该文件的数据的块编号。无论何时进入读/写,它都会从namenode写入/读取块编号,并根据namenode存储在内存中的反向映射来接近datanode(映射是在数据节点出现时构建和更新的)。告诉文件操作,哪个块号由哪个数据节点托管,因此哪个是需要向/从中写入/读取信息的数据节点。这只是一个猜测,并希望有人可以确认这一点。此外,这是映射器从指定为地图减少作业的输入的文件中读取的方式,唯一的区别是作业跟踪器可以执行计算数据节点并在相应数据节点上生成映射器的工作吗?

1 个答案:

答案 0 :(得分:2)

  

在哪里可以找到HDFS上的写/读操作的逐步说明。

检查this漫画,以便从HDFS读取/写入数据。它不涉及API级别的细节,而是在高级别描述。另外,关于HDFS的this文章很有意思。

  

我很清楚namenode包含特定于文件系统的元数据。但我想确切知道存储在namenode上的数据是什么。

可以使用这些instructions对HDFS元数据内容进行脱机转储。