Hadoop学习回顾之HDFS提纲

HDFS

HDFS的设计理念:

  1. 超大存储
  2. 廉价x86服务器
  3. 流式数据访问(一次写入,多次读取,如果不借助HUE,无法直接对hdfs文件进行修改保存,需要利用 hdfs dfs –put命令)

HDFS缺点:

  1. 实时访问弱,如要求秒级或者毫秒级数据访问,考虑使用HBase
  2. 不适合存储大量小文件,HDFS启动时,Namenode将所有元数据读至内存,一条元数据150B,内存小会对Namenode有极大压力,解决方法,hdfs联邦

HDFS架构:

Namenode,Secondary Namenode,DataNode,common storage

NameNode和其冷备Secondary NameNode:

  1. SNN引导NN滚动更新Edit Log,将新的操作写入EditLog.new
  2. SNN将NN的时间最近的FSImage和时间最近的Editlog复制到SNN的检查点
  3. SNN将FSImage+Editlog合并成新的FSImage,将新的FSImage写入磁盘。
  4. SNN将新的FSImage返回给NN,NN接受FSImage直接加载和应用。NN将Editlog.new 更名为Edit Log

HDFS三副本,两冗余,副本存储策略选择,随机选择一个DataNode->另一机架节点->与副本2同机架的随机另一节点,策略选定后,会根据集群网络拓扑创建管道。

HDFS读与写:

  1. 读:HDFS客户端请求,NN返回数据块,主机名,HDFS Client再次向DataNode请求数据块
  2. 写:客户端与三个要写入数据的datanode的写入顺序与写完响应,手拉手成环。
  3. HDFS以写方式打开text.txt
  4. 请求送达至Namenode创建对应的元数据,但不与block关联
  5. 数据写入流,数据自动拆分成数据包。打开复制管道,管道类似于进程锁复制,
  6. 一批完成继续复制下一批,完成后结束。

NameNode HA:(热备)

技术点及其实现:

  1. 主备同步,备节点共享存储,QJM周期性获取编辑日志(Paxos算法),zookeeper的选主机制
  2. 防止脑裂,防止突然都挂死或者突然都具备控制权。共享存储进行隔离,客户端隔离
  3. 切换上层应用无感知。RPC封装,失败连接新的namenode,对应用户几乎无感知。

HDFS联邦:

  1. HDFS Federation+ViewFS
  2. HDFS Federation+ViewFS+HA
  3. HDFS元数据迁移,FastCopy,全局硬链接?

HDFS命令行接口:

Hdfs dfs –ls /,hdfs dfs –lsr,hdfs dfs –expunge (清空回收站,rm的第一步是mv到trash目录),hdfs dfs –cat ,hdfs dfs –touchz,hdfs dfs –mkdir ,hdfs dfs –put/copyFromLocal,hdfs dfs –get/copyToLocal

 

 

 

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值