异构存储(冷热数据分离)

Posted 刘元涛

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了异构存储(冷热数据分离)相关的知识,希望对你有一定的参考价值。

异构存储主要解决不同的数据,存储在不同类型的硬盘中,达到最佳性能的问题。

异构存储Shell操作

(1)查看当前有哪些存储策略可以用

[lytfly@hadoop102 hadoop-3.1.4]$ hdfs storagepolicies -listPolicies

(2)为指定路径(数据存储目录)设置指定的存储策略

hdfs storagepolicies -setStoragePolicy -path xxx -policy xxx

(3)获取指定路径(数据存储目录或文件)的存储策略

hdfs storagepolicies -getStoragePolicy -path xxx

(4)取消存储策略;执行改命令之后该目录或者文件,以其上级的目录为准,如果是根目录,那么就是HOT

hdfs storagepolicies -unsetStoragePolicy -path xxx

(5)查看文件块的分布

bin/hdfs fsck xxx -files -blocks -locations

(6)查看集群节点

hadoop dfsadmin -report

配置文件信息

(1)为hadoop102节点的hdfs-site.xml添加如下信息

<property>
    <name>dfs.replication</name>
    <value>2</value>
</property>
<property>
    <name>dfs.storage.policy.enabled</name>
    <value>true</value>
</property>
<property>
    <name>dfs.datanode.data.dir</name> 
    <value>[SSD]file:///opt/module/hadoop-3.1.4/hdfsdata/ssd,[RAM_DISK]file:///opt/module/hadoop-3.1.4/hdfsdata/ram_disk</value>
</property>

(2)为hadoop103节点的hdfs-site.xml添加如下信息

<property>
    <name>dfs.replication</name>
    <value>2</value>
</property>
<property>
    <name>dfs.storage.policy.enabled</name>
    <value>true</value>
</property>
<property>
    <name>dfs.datanode.data.dir</name>
    <value>[SSD]file:///opt/module/hadoop-3.1.4/hdfsdata/ssd,[DISK]file:///opt/module/hadoop-3.1.4/hdfsdata/disk</value>
</property>

(3)为hadoop104节点的hdfs-site.xml添加如下信息

<property>
    <name>dfs.replication</name>
    <value>2</value>
</property>
<property>
    <name>dfs.storage.policy.enabled</name>
    <value>true</value>
</property>
<property>
    <name>dfs.datanode.data.dir</name>
    <value>[RAM_DISK]file:///opt/module/hdfsdata/ram_disk,[DISK]file:///opt/module/hadoop-3.1.4/hdfsdata/disk</value>
</property>

(4)为hadoop105节点的hdfs-site.xml添加如下信息

<property>
    <name>dfs.replication</name>
    <value>2</value>
</property>
<property>
    <name>dfs.storage.policy.enabled</name>
    <value>true</value>
</property>
<property>
    <name>dfs.datanode.data.dir</name>
    <value>[ARCHIVE]file:///opt/module/hadoop-3.1.4/hdfsdata/archive</value>
</property>

(5)为hadoop106节点的hdfs-site.xml添加如下信息

<property>
    <name>dfs.replication</name>
    <value>2</value>
</property>
<property>
    <name>dfs.storage.policy.enabled</name>
    <value>true</value>
</property>
<property>
    <name>dfs.datanode.data.dir</name>
    <value>[ARCHIVE]file:///opt/module/hadoop-3.1.4/hdfsdata/archive</value>
</property>

注意:当我们将目录设置为COLD并且我们未配置ARCHIVE存储目录的情况下,不可以向该目录直接上传文件,会报出异常。

 

数据准备

(1)启动集群

[lytfly@hadoop102 hadoop-3.1.4]$ hdfs namenode -format
[lytfly@hadoop102 hadoop-3.1.4]$ myhadoop.sh start

(1)并在HDFS上创建文件目录

[lytfly@hadoop102 hadoop-3.1.4]$ hadoop fs -mkdir /hdfsdata

(2)并将文件资料上传

[lytfly@hadoop102 hadoop-3.1.4]$ hadoop fs -put /opt/module/hadoop-3.1.4/NOTICE.txt /hdfsdata

 

以上是关于异构存储(冷热数据分离)的主要内容,如果未能解决你的问题,请参考以下文章

大数据之Hadoop的HDFS存储优化—异构存储(冷热数据分离)

HDFS之存储优化纠删码原理纠删码案例实操 异构存储(冷热数据分离)

TiDB 6.0 实战分享丨冷热存储分离解决方案

ElasticSearch——冷热分离

还不知道HBase冷热分离的技术原理?看这一篇就够了!

Apache Druid0.17版本冷热数据分离设置