hadoop学习笔记--NameNode和DataNode以及容错处理
来源:互联网 发布:头颅移植手术 知乎 编辑:程序博客网 时间:2024/06/06 22:19
概念:
HDFS会把一个很大的文件分块(与传统的文件系统类似),存放在不同的DataNode上。不过这个块是个逻辑概念,比较大,默认是64M。
Hadoop以“管理者-工作者”模式运行。NameNode就是管理者,它保存了文件系统中所有文件以及目录信息。也记录了每个文件的分块信息。但这些分块具体在哪些机器上存储则由DataNode自己上报。
容错:
NameNode的容错:
所有的文件访问都要通过NameNode来进行,所以NameNode至关重要。一旦NameNode发生毁坏,则整个系统都不可用。HDFS提供了两种容错机制来保证NameNode的可用性:
1 第一种方法是把文件元数据写入NFS,备份在另一台机器上。备份操作是同步的,原子的。
2 第二种方法是运行辅助的NameNode,不过这个NameNode并不提供服务,它只是把操作日志Merge到Metadata中,但是如果主NameNode失效,总是有一部分数据来不及Merge,会造成数据丢失。所以一般的做法还是把NFS中备份的数据拷贝到这个NameNode,并作为主NameNode运行。
DataNode容错:
DataNode以数据块作为容错单位,通常一个数据块会被复制到三个DataNode上去。一旦某个数据块访问失效,则去其他备份的机器上去读取。并且会把这个数据块再进行一次复制,以达到备份标准。
也就是说,DataNode不是在机器级别上进行备份,而是在数据块级别上进行备份,这样就大大节省了机器数量。
HDFS会把一个很大的文件分块(与传统的文件系统类似),存放在不同的DataNode上。不过这个块是个逻辑概念,比较大,默认是64M。
Hadoop以“管理者-工作者”模式运行。NameNode就是管理者,它保存了文件系统中所有文件以及目录信息。也记录了每个文件的分块信息。但这些分块具体在哪些机器上存储则由DataNode自己上报。
容错:
NameNode的容错:
所有的文件访问都要通过NameNode来进行,所以NameNode至关重要。一旦NameNode发生毁坏,则整个系统都不可用。HDFS提供了两种容错机制来保证NameNode的可用性:
1 第一种方法是把文件元数据写入NFS,备份在另一台机器上。备份操作是同步的,原子的。
2 第二种方法是运行辅助的NameNode,不过这个NameNode并不提供服务,它只是把操作日志Merge到Metadata中,但是如果主NameNode失效,总是有一部分数据来不及Merge,会造成数据丢失。所以一般的做法还是把NFS中备份的数据拷贝到这个NameNode,并作为主NameNode运行。
DataNode容错:
DataNode以数据块作为容错单位,通常一个数据块会被复制到三个DataNode上去。一旦某个数据块访问失效,则去其他备份的机器上去读取。并且会把这个数据块再进行一次复制,以达到备份标准。
也就是说,DataNode不是在机器级别上进行备份,而是在数据块级别上进行备份,这样就大大节省了机器数量。
1 0
- hadoop学习笔记--NameNode和DataNode以及容错处理
- Hadoop启动namenode和datanode
- 《hadoop学习》关于hdfs中的namenode和datanode详解
- hadoop相关记录namenode以及datanode
- Hadoop源码分析之读文件时NameNode和DataNode的处理过程 选取datanode详解
- hadoop namenode和datanode无法启动
- Hadoop获得集群NameNode和DataNode状态
- 对DataNode和namenode的理解--hadoop
- Hadoop原理---HDFS中的NameNode和DataNode
- Hadoop无法启动NameNode和DataNode
- Hadoop(04) NameNode、DataNode
- Hadoop源码分析之读文件时NameNode和DataNode的处理过程
- hadoop学习笔记之start-all.sh 无法启动NameNode,DataNode
- Hadoop学习笔记,MapReduce任务Namenode DataNode Jobtracker Tasktracker之间的关系
- Hadoop学习笔记:MapReduce任务Namenode DataNode Jobtracker Tasktracker之间的关系
- 【hadoop】 2004-hdfs datanode容错
- Hadoop学习-错误记录:namenode、datanode、secondarynamenode未启动
- Hadoop 执行jps后没有namenode和datanode
- C# .NET 4.0
- leetcode_num169_Majority Element
- LeetCode | # 23
- Solaris 10 虚拟机探究(2)
- zoj 3775
- hadoop学习笔记--NameNode和DataNode以及容错处理
- 10个数求最大
- 婴儿衣物该如何挑选?
- design_pattern_compound
- C++ typedef用法小结 (※不能不看※)
- StrictMode使用详解
- Java中堆内存和栈内存详解
- TCP/IP 学习
- hadoop学习笔记--hadoop读写文件过程