并不是所有OSS-HDFS中存储的数据都需要频繁访问,但基于数据合规或者存档等原因,部分数据仍然需要继续保存。针对以上问题,OSS-HDFS服务支持数据的冷热分层存储,对于经常需要访问的数据以标准类型进行存储,对于较少访问的数据以低频、归档以及冷归档类型进行存储,从而降低总存储成本。
前提条件
已在OSS-HDFS服务中写入数据。
华东1(杭州)、华东2(上海)、华北2(北京)、华南1(深圳)、华北3(张家口)、中国香港、新加坡、德国(法兰克福)、美国(硅谷)、美国(弗吉尼亚)、印度尼西亚(雅加达)地域支持使用冷热分层存储功能。
已提交工单申请使用冷热分层存储功能。
已安装4.4.0及以上版本JindoSDK 。具体操作,请参见非EMR集群接入OSS-HDFS服务快速入门。
注意事项
当使用的JindoSDK版本低于6.4.0时,不支持在设置为低频、归档以及冷归档存储类型的目录下创建文件。如果您需要在这三种类型的目录下创建文件,可以在标准类型目录下创建并关闭文件后,通过rename操作转移到低频、归档以及冷归档目录。
如果您希望在低频、归档以及冷归档存储类型的目录下直接创建文件,您需要升级JindoSDK至6.4.0及以上版本。
数据转换为归档或者冷归档存储类型时,系统开销大,解冻取回慢,请谨慎选择。
支持数据从归档类型转换为冷归档存储类型,不支持数据从冷归档类型转换为归档类型。
费用说明
数据取回费用
读取OSS-HDFS低频访问、归档、冷归档类型数据时,涉及数据取回费用。因此对于需要频繁访问的数据,应避免设置这三种存储类型。关于这三种存储类型数据取回费用的更多信息,请参见数据处理费用。
标签费用
为OSS-HDFS服务的数据设置存储策略时,涉及数据块添加标签操作。数据块标签费用遵循OSS对象标签计费规则。更多信息,请参见对象标签费用。
不足规定时长存储容量费用
低频访问类型最低存储时间为30天,归档类型最低存储时间为60天,冷归档最低存储时间为180天。通过jindofs转换数据存储类型时,确保满足不同存储类型最低存储时长的要求,避免产生额外费用。详细示例如下:
转储方式
示例
最低存储时长计算方式
已产生容量费用
如何避免产生不足规定时长容量费用
热转冷
标准(存储10天)-->转换为低频访问
转换后不会重新计算数据的存储时间。转换前的存储天数计入新类型的最低存储时长。
10天标准存储容量费用
以低频类型继续存储20天
低频访问(存储10天)-->转换为归档
10天低频访问容量费用
以归档类型继续存储50天
标准(存储10天)-->转换为冷归档
转换后重新计算数据的存储时间。转换前的存储天数不计入新类型的最低存储时长。
10天标准存储容量费用
以冷归档类型继续存储180天
冷转热
冷归档(存储10天)-->转换为低频
10天冷归档存储容量费用
以冷归档类型继续存储170天后再转低频
转为低频类型后继续存储30天
操作步骤
连接ECS实例。具体操作,请参见连接ECS实例。
下载JindoFS SDK。
配置访问密钥和环境变量。
进入已安装的Jindofs JAR包下的bin目录。
以下以
jindofs-sdk-x.x.x-linux
为例,如使用其他版本的JindoSDK,请替换为对应的JAR包名称。cd jindofs-sdk-x.x.x-linux/bin/
在bin目录下新建配置文件jindofs.cfg,然后在配置文件中添加以下配置项。
[client] <!-- 配置访问OSS-HDFS服务的AccessKeyId、AccessKeySecret。 --> fs.oss.accessKeyId = LTAI******** fs.oss.accessKeySecret = KZo1******** <!-- 以下以杭州地域为例,其他地域请根据实际情况替换。 --> fs.oss.endpoint = cn-hangzhou.oss-dls.aliyuncs.com
设置环境变量。
说明<JINDOSDK_CONF_DIR>填写
jindofs.cfg
配置文件所在的绝对路径。export JINDOSDK_CONF_DIR=<JINDOSDK_CONF_DIR>
指定为写入OSS-HDFS服务的数据设置存储策略。
场景
执行命令
执行结果
为写入OSS-HDFS服务的数据设置存储策略为低频访问存储
./jindofs fs -setStoragePolicy -path oss://examplebucket/dir1 -policy CLOUD_IA
dir1/目录下的文件对应的数据块会携带Key为transition-storage-class、Value为IA的标签信息。
为写入OSS-HDFS服务的数据设置存储策略为归档存储
./jindofs fs -setStoragePolicy -path oss://examplebucket/dir2 -policy CLOUD_AR
dir2/目录下的文件对应的数据块会携带Key为transition-storage-class、Value为Archive的标签信息。
为写入OSS-HDFS服务的数据设置存储策略为冷归档存储
./jindofs fs -setStoragePolicy -path oss://examplebucket/dir3 -policy CLOUD_COLD_AR
dir3/目录下的文件对应的数据块会携带Key为transition-storage-class、Value为ColdArchive的标签信息。
开启冷热分层存储。
登录OSS管理控制台。
单击左侧导航栏的Bucket列表,然后单击目标Bucket。
在左侧导航栏,选择 。
在HDFS服务页签,单击设置冷热分层。
在冷热分层的冷热分层基础设置区域,打开状态开关。
为避免配置错误导致冷热分层无法正常工作,OSS会自动创建同时包含以下三种策略的生命周期规则:
指定OSS-HDFS的数据存储目录.dlsdata/下携带Key为transition-storage-class、Value为IA标签的数据在1天后转为低频访问存储。
指定OSS-HDFS的数据存储目录.dlsdata/下携带Key为transition-storage-class、Value为Archive标签的数据在1天后转为归档存储。
指定OSS-HDFS的数据存储目录.dlsdata/下携带Key为transition-storage-class、Value为ColdArchive标签的数据在1天后转为冷归档存储。
重要请勿编辑分层存储开启后自动创建的包含转换为低频、归档以及冷归档类型三种策略的生命周期规则,否则可能导致OSS-HDFS数据及服务异常。
单击确定。
OSS-HDFS服务会根据设置的存储策略应用生命周期中对应的转储策略。
生命周期规则创建后的24小时内,OSS会加载规则。规则加载完成后,OSS会在每天的北京时间08:00开始执行规则,具体执行时间取决于文件数量,最快48小时内转换为指定的存储类型。
相关命令
命令语法 | 使用说明 |
| 该命令用于为某个路径下的数据指定存储策略。
重要
|
| 该命令用于查询指定路径下数据的存储策略。 |
| 该命令用于取消指定路径下的数据的存储策略。 |
| 该命令用于查询指定路径下数据存储策略的转换状态。转换状态分为以下四种:
说明 该命令只用于查询OSS-HDFS元数据转换任务的状态,不能反映已提交到OSS的任务处理状态。 |
| 该命令用于临时解冻指定路径下的归档或者冷归档存储类型的数据。
临时解冻归档或者冷归档数据时,有以下注意事项: 重要
|