HDFS异构存储机制

目录:

1.异构存储介绍

2.存储介质

3.HDFS存储策略(异构存储)

4.HDFS异构存储原理

5.HDFS异构存储的使用

 

一,异构存储介绍

异构存储是Hadoop在2.6.0版本中引入了一个新特性,HBase也从1.1.0开始支持WAL的异构存储策略。

异构存储可以根据各个存储介质读写特性的不同发挥各自的优势.

一个很适用的场景就是冷热数据的存储.针对冷数据,采用容量大的,读写性能不高的存储介质存储,比如最普通的Disk磁盘.而对于热数据而言,可以采用SSD的方式进行存储,这样就能保证高效的读性能,在速率上甚至能做到十倍于或百倍于普通磁盘读写的速度.换句话说,HDFS的异构存储特性的出现使得我们不需要搭建2套独立的集群来存放冷热2类数据,在一套集群内就能完成.

 

二,存储介质

如上图所示,存储介质可以大概分为

  1. RAM_DISK(内存)
  2. SSD(固态硬盘)
  3. DISK(普通硬盘,在HDFS中,如果没有主动声明数据目录存储类型默认都是DISK)
  4. ARCHIVE(没有特指哪种存储介质,主要的指的是计算能力比较弱而存储密度比较高的存储介质,用来解决数据量的容量扩增的问题)     

一般用得比较多的SSD和DISK两类。如果配置的时候没有指定存储类型的话,默认就是DISK存储。

三,HDFS存储策略(异构存储)

5847011-9e43c0d85639e975.png

如上所示,hdfs定义了6中存储策略:

Lazy_persist:一个副本保存在内存RAM_DISK中,其余副本保存在磁盘中
ALL_SSD:所有副本都保存在SSD中
One_SSD:一个副本保存在SSD中,其余副本保存在磁盘中
Hot:所有副本保存在磁盘中,这也是默认的存储策略
Warm:一个副本保存在磁盘上,其余副本保存在归档存储上
Cold:所有副本都保存在归档存储上
图表中第4、5列表示创建和写副本的时候,如果该存储策略对应的资源不足,比如磁盘不可用或者空间写满,则创建文件和同步副本的时候选择第4和第5列对应的存储类型,你可以理解为降级机制,这里不再赘述。

 

四,HDFS异构存储原理

5847011-4351440347dcc3ba.png

1. DataNode通过心跳汇报自身数据存储目录的StorageTypeNameNode(数据存储目录的解析/心跳汇报过程)

2. NameNode收到DataNode发送的关于存储类型、容量等内容的心跳包后,会进行处理,更新存储的相关内容。

3. 写请求发到NameNode后,NameNode根据写请求具体的目录对应的存储策略选择对应的存储类型的DataNode进行写入操作。

五,HDFS异构存储的使用

hdfs-site.xml配置:

<property>
 <name>dfs.datanode.data.dir</name>
 <value>/data01/block/,/data02/block/,/data03/block/,/data04/block/,[SSD]/data05/block/</value>
        <final>true</final>
</property>

其中第5块盘为SSD类型,其他盘默认为DISK类型;

存储策略相关命令的使用:

1. 设置对应文件路径的策略:hdfs storagepolicies -setStoragePolicy -path -policy

2. 取消策略:   hdfs storagepolicies -unsetStoragePolicy -path

3. 获取对应路径的策略: hdfs storagepolicies -getStoragePolicy -path

说明:执行改命令之后该目录或者文件,以其上级的目录为准,如果是根目录,那么就是HOT。

 

参考:http://hadoop.apache.org/docs/stable/hadoop-project-dist/hadoop-hdfs/ArchivalStorage.html

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值