- 1.HDFS简介:
- 优点:
- 缺点:
- 2. HDFS组成
- 1.NameNode(名称节点)
- 2.DataNode(数据节点)
- 3.SecondaryNameNode(第二名称节点)
- 3.HDFS工作机制
- 副本冗余策略
- 4.数据容错
- 1.数据节点(DataNode)出错
- 2.名称节点(NameNode)出错
HDFS是Google公司的GFS分布式文件系统的开源实现,是Apache Hadoop项目的子项目。 HDFS是基于流式数据访问模式的分布式文件系统,支持海量数据的存储,允许用户将成千上百的计算机组成存储集群 HDFS可以运行的低成本的硬件上,提高吞吐量,高容错性的数据访问。优点:
1. 处理超大文件 2. 支持流式数据访问 3. 低成本运行缺点:
4. 不适合处理低延迟的数据访问 5. 不适合处理大量小文件 6. 不适合多用户写入和任意修改2. HDFS组成 1.NameNode(名称节点)
名称节点是HDFS的管理者 它的作用: 1.管理和维护HDFS的命名空间。维护edits和fsimage 2.管理DataNode上的数据块 3.接收客户端的请求2.DataNode(数据节点)
数据块的大小默认2.2版本之前64MB,现在128MB 功能: (1)保存数据块。 (2)启动DataNode线程,向NameNode定期汇报数据块信息 (3)定期向NameNode发送心跳信息保持联系3.SecondaryNameNode(第二名称节点)
功能: (1)作为检查点 (2)定期合并fsimage和edis文件(控制edis大小,减少重启时间)3.HDFS工作机制 副本冗余策略
HDFS上的文件对应的数据块保存又很多的副本,且提供容错机制,副本丢失或宕机时自动恢复。 HDFS默认保存3个副本 (1)第一个副本: 放置在上传文件 的数据节点上。如果在集群外提交,则随机挑选一台磁盘不太满,cpu不太忙的节点上 (2)第二个副本:放置在和第一个副本不同的机架的节点上 (3)第三个副本:放置在与第一个副本相同机架的不同节点上 这种策略减少了机架间的数据传输,提高了写 *** 作的效率4.数据容错 1.数据节点(DataNode)出错
1.每个DataNode都会定期的给NameNode发送心跳信号。 如果NameNode收不到心跳信号则视为宕机,不再为它发送I/O请求。 2.DataNode宕机会引起一些数据块的副本数低于指定值。 NameNode不断检测需要复制的数据块。 一但发现副本值低于设定副本数就启动复制 *** 作。2.名称节点(NameNode)出错
Hadoop采用两种方式来确保名称节点的安全。 1. 把名称节点上的元数据信息同步存储在其他文件系统(挂载到云服务) 2. 运行一个SecondaryNameNode。利用SecondaryNameNode中的元数据信息进行系统恢复。 但这种方法仍然有数据丢失(主要是本次启动后数据没有同步到SecondaryNameNode,数据同步在关机时运行) 通常两种方式结合使用
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)