HDFS冷热存储

HDFS冷热存储

《HDFS冷热存储》,Hadoop3.x支持HDFS目录级别配置异构存储,不同路径制定不同的存储策略。

一、Hadoop3.x支持的存储类型有以下几种

存储类型 说明
RAM_DISK 内存镜像文件系统
SSD 固态硬盘
DISK 普通磁盘(Hadoop默认存储类型)
ARCHIVE 没有特指哪种存储介质,主要指的是计算能力比较弱而存储密度比较高的存储介质,用来解决数据量的容量扩增问题,一般用于归档

二、Hadoop3.x支持的存储策略有以下几种

策略ID 策略名称 副本分布 解释说明
15 Lazy_Persist RAM_DISK: 1, DISK: n-1 一个副本保存在内存中,其余副本保存在磁盘上
12 ALL_SSD SSD: n 所有副本保存在固态硬盘上
10 One_SSD SSD: 1, DISK: n – 1 一个副本保存在固态硬盘,其余副本保存在磁盘上
7 Hot(default) DISK: n 所有副本保存在磁盘上
5 Warm DISK: 1, ARCHIVE: n – 1 一个副本保存在磁盘,其余副本保存在归档存储上
2 Cold ARCHIVE: n 所有副本都保存在归档存储上

三、存储策略常用shell操作

四、存储类型配置

需要在hdfs-site.xml文件中声明哪些目录是DISK、哪些目录是SSD,哪些目录是内存。另外在生产环境中每台DataNode的存储介质可能不尽相同,所以每台节点的hdfs-site.xml文件配置的内容可能不一样。

五、存储策略示例

六、注意事项

如果存储策略为LAZY_PERSIST时,文件块副本都存储在DISK上,而不是有一个在内存中,原因有如下两点:

  1. 当客户端所在的DataNode节点没有RAM_DISK时,则会写入客户端所在的DataNode节点的DISK磁盘,其余副本会写入其他节点的DISK磁盘。
  2. 当客户端所在的DataNode有RAM_DISK,但“dfs.datanode.max.locked.memory”参数值未设置或者设置过小(小于“dfs.block.size”参数值)时,则会写入客户端所在的DataNode节点的DISK磁盘,其余副本会写入其他节点的DISK磁盘。

总体上HDFS冷热异构存储的价值在于,根据数据热度采用不同策略从而提升集群整体资源使用效率。对于频繁访问的数据,将其全部或部分保存在更高访问性能的存储介质(内存或SSD)上,提升其读写性能;对于几乎不会访问的数据,保存在归档存储介质上,降低其存储成本。

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注