微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

hadoop学习之HDFS原理

HDFS原理

 

HDFS包括三个组件:

NameNode、Datanode、SecondaryNameNode

 

  • NameNode的作用是存储元数据(文件名、创建时间、大小、权限、与block块映射关系等)
  • Datanode的作用是存储真实数据信息
  • SecondaryNameNode作用合并edits和fsimage文件

 

 

hadoop.tmp.dir  -> /tmp/hadoop-root

dfs.namenode.dfs.dir ->/dfs/name/current

 

see_txid  :操作事务id, 编号,用于显示操作次数,每次操作自增1

VERSION:显示namespaceID clusterID 

 

修改namenode的存储位置:

<configuration>

  <property>

    <name>dfs.replication</name>

    <value>1</value>

  <property>

  <property>

    <name>dfs.namenode.name.dir<name>

    <value>/opt/module/hadoop-2.6.0/data</value>

  </property>

</configuration>

 

 

dfs.datanode.data.dir -> /tmp/hadoop-root/dfs/data

 

修改datanode的存储目录

<configuration>

  <property>

    <name>dfs.replication</name>

    <value>1</value>

  <property>

  <property>

    <name>dfs.datanode.data.dir<name>

    <value>/opt/module/hadoop-2.6.0/data</value>

  </property>

</configuration>

 

 

修改secondarynamenode的目录

file://${hadoop.tmp.dir}/dfs/namesecondary

 

重新格式化

hdfs namenode -format -force

 

多次格式化namenode的问题解释

hdfs格式化会改变VERSION文件中的clusterID,首次格式化时datannode和namenode会产生相同的clusterID;

如果重新执行格式化,namenode的 clusterID会改变,就会与datanode的clusterID不一致,如果重新启动或读写hdfs就会挂掉

 

需要手动修改

 

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐