hadoop之HDFS

概述

hadoop包括hdfs, yarn, mapReduce.

hdfs分布式存储系统
yarn任务调度,资源管理的框架
mapReduce计算框架

hadoop搭建集群有几种 :
单机模式
伪分布式
完全分布式

特点总结

切块能存储超大文件
心跳保证检测故障
不允许修改一次写入,多次读取,不允许修改,允许追加写入
不建议存小文件,产生大量元数据
能在廉价设备上横向拓展
不支持低延迟响应
不支持事务,允许大数据下的容错

.
.

基本结构

HDFS是主从结构,Namenode+dataNode
数据存储在根目录/ 下

HDFS结构图

.
.
.

Block块

HDFS基本的存储单元,所有的数据都用block形式存储
数据切块,block快最大默认128M
3个备份
切块的意义:便于存储超大文件,快速备份
.

.

Namenode

存储元数据,管理datanode
Namenode用心跳机制管理datanode
datanode定时发送心跳,namenode通过心跳来判断datanode是否存活

edits滚动写入fsimage的条件:
1h间隔
重启
强制更新:hadoop dfsadmin -rollEdits
edits达到64M

心跳信息:
集群编号clusterId
datanode服役状态:预服役,服役,退役
datanode上的blockId
.
.

副本放置策略

第一个副本:
集群内,当前节点上
集群外上传,namenode选datanode空闲节点
2.7之前,2和3副本同机架,1不同
2.7之后,1和2副本同机架,3不同
其余节点放置在空闲机架
在这里插入图片描述
.
.

SecondaryNamenode

不是namenode备份,辅助namenode完成edits滚动
一般采用namenode+备份+N个dataNode, 不使用secondaryNamenode.

.
.

读/下载流程

hdfs读取/下载流程

写入流程

hdfs写入流程

删除流程

1.客户端发起请求,namenode检验权限和文件是否存在,返回信号
2.校验成功,namenode记录edit,再修改内存中的元数据,返回给客户端ack
3.dataNode发送心跳,检验心跳信息中和元数据是否一致,在心跳响应中要求删除对应的block
4.datanode收到心跳响应后,去删除对应的block
.

.

操作命令

搭建集群完成之后,任意位置输入start-all.sh就可以启动

组件分布在各个节点中
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值