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

hadoop学习之HDFS原理

@H_502_0@HDFS原理

@H_502_0@ 

@H_502_0@HDFS包括三个组件:

@H_502_0@NameNode、Datanode、SecondaryNameNode

@H_502_0@ 

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

@H_502_0@ 

@H_502[email protected]  -> /tmp/hadoop-root

@H_502[email protected] ->/dfs/name/current

@H_502_0@ 

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

@H_502_0@VERSION:显示namespaceID clusterID 

@H_502_0@ 

@H_502_0@修改namenode的存储位置:

@H_502_0@<configuration>

@H_502_0@  <property>

@H_502_0@    <name>dfs.replication</name>

@H_502_0@    <value>1</value>

@H_502_0@  <property>

@H_502_0@  <property>

@H_502_0@    <name>dfs.namenode.name.dir<name>

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

@H_502_0@  </property>

@H_502_0@</configuration>

@H_502_0@ 

@H_502_0@ 

@H_502[email protected]atanode.data.dir -> /tmp/hadoop-root/dfs/data

@H_502_0@ 

@H_502_0@修改datanode的存储目录

@H_502_0@<configuration>

@H_502_0@  <property>

@H_502_0@    <name>dfs.replication</name>

@H_502_0@    <value>1</value>

@H_502_0@  <property>

@H_502_0@  <property>

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

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

@H_502_0@  </property>

@H_502_0@</configuration>

@H_502_0@ 

@H_502_0@ 

@H_502_0@修改secondarynamenode的目录

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

@H_502_0@ 

@H_502_0@重新格式化

@H_502_0@hdfs namenode -format -force

@H_502_0@ 

@H_502_0@多次格式化namenode的问题解释

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

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

@H_502_0@ 

@H_502_0@需要手动修改

@H_502_0@ 

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

相关推荐