Hadoop学习笔记(二)--HDFS分布式文件系统(1)

Hadoop学习笔记(二)--HDFS分布式文件系统

HDFS简介

优点:

  • 处理超大文件
  • 流式的访问数据(一次写入,多次读取)
  • 运行于廉价的商用机器集群上

局限性:

  • 不适合处理低延迟数据访问
  • 无法高效存储大量的小文件
  • 不支持多用户写入及任意修改文件

HDFS架构

主从结构

  • 主节点:只有一个NameNode(单点故障),HA下会有多个NameNode
  • 从节点:有很多DataNode

NameNode负责

  • 接收用户操作请求
  • 维护文件系统的目录结构
  • 管理文件与block之间的关系,blockDataNode之间的关系

DataNode负责

  • 存储文件
  • 文件被分成block存储在磁盘上
  • 为保证数据安全,文件会有多个副本

HDFS核心设计

数据块

HDFS块默认大小,Hadoop164MHadoop2128M

数据副本存放策略

在多数情况下,HDFS默认的副本系数是3

  • 第一个block副本放在和client所在的node里(如果client不在集群范围内,则这第一个node是随机选取的,系统会尝试不选择那些太满或者太忙的node)。
  • 第二个副本放置在与第一个节点不同的机架中的node中(随机选择)。
  • 第三个副本和第二个副本在同一个机架,随机放在不同的node中。

安全模式

hadoop dfsadmin -safemode leave //强制NameNode退出安全模式

hadoop dfsadmin -safemode enter //进入安全模式

hadoop dfsadmin -safemode get //查看安全模式状态

hadoop dfsadmin -safemode wait //等待,一直到安全模式结束

负载均衡

分析数据块分布和重新均衡DataNode上的数据分布的工具。

$HADOOP_HOME/sbin/start-balancer.sh

心跳机制

1. Hadoopmaster/slave结构,master中有NameNodeResourceManager,slave中有DataNodeNodeManager

2. master启动时,会启动一个ipcInter-Process Communication,进程间通信)server服务,等待slave连接。

3. slave启动时,会主动连接master中的服务,并且每隔3秒连接一次master,这就是心跳,slave通过心跳汇报自己的状态给master

4. NameNode通过心跳知道DataNode的状态;ResourceMangager也通过心跳知道Nodemanager的状态。

5. 如果master长时间没有收到slave的心跳,那么它就认为slave宕机了。

机架感知

大型Hadoop集群是以机架的形式来组织的。默认没有启用。

HDFS操作

  • 命令行接口
  • Java接口



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值