CN115840543B - 一种数据分层存储方法、装置、设备及存储介质 - Google Patents

一种数据分层存储方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN115840543B
CN115840543B CN202310173722.6A CN202310173722A CN115840543B CN 115840543 B CN115840543 B CN 115840543B CN 202310173722 A CN202310173722 A CN 202310173722A CN 115840543 B CN115840543 B CN 115840543B
Authority
CN
China
Prior art keywords
storage
storage medium
stored
rule
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202310173722.6A
Other languages
English (en)
Other versions
CN115840543A (zh
Inventor
马骁
何文龙
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Inspur Electronic Information Industry Co Ltd
Original Assignee
Inspur Electronic Information Industry Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Inspur Electronic Information Industry Co Ltd filed Critical Inspur Electronic Information Industry Co Ltd
Priority to CN202310173722.6A priority Critical patent/CN115840543B/zh
Publication of CN115840543A publication Critical patent/CN115840543A/zh
Application granted granted Critical
Publication of CN115840543B publication Critical patent/CN115840543B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

本申请涉及数据存储技术领域,公开了一种数据分层存储方法、装置、设备及存储介质,包括:获取上传的待存储对象;对与所述待存储对象相关联的目标放置策略进行解析,得到所述目标放置策略中添加的多个写入规则及其对应的执行优先级;按照执行优先级的高低顺序根据对应的所述写入规则将所述存储对象在相应的存储介质中进行分层存储;其中,所述存储介质包括存放高频访问数据的第一存储介质和存放低频访问数据的第二存储介质。可见,本申请能够充分体现不同存储介质的读写性能优势,提高存储利用率以应对快速增长的数据压力。

Description

一种数据分层存储方法、装置、设备及存储介质
技术领域
本发明涉及数据存储技术领域,特别涉及一种数据分层存储方法、装置、设备及存储介质。
背景技术
分布式对象存储是专为非结构化数据提供的可大规模扩展且经济高效的存储方案。随着互联网的不断发展、5G的到来和使用,非结构化数据不断呈现爆炸式增长,此外企业用户也希望将各种类型的数据存储越来越长的时间,以便更深入地研究分析。在对象存储中存储桶是逻辑上存放非结构化用户数据的容器,一个存储桶对应一组存储池。对于同一种前端业务产生数据的类别可能不同,有的是需要频繁访问的热点数据,有的数据访问频率稍低,而有的数据则是用于备份。然而由于存储桶的放置策略单一不完善,导致同一个存储桶中不同存储类别的数据目前无法有效区分,存放在相同存储池中,无法体现出不同存储介质的读写性能优势。
因此,上述技术问题亟待本领域技术人员解决。
发明内容
有鉴于此,本发明的目的在于提供一种数据分层存储方法、装置、设备及存储介质,能够充分体现不同存储介质的读写性能优势,提高存储利用率以应对快速增长的数据压力。其具体方案如下:
本申请的第一方面提供了一种数据分层存储方法,包括:
获取上传的待存储对象;
对与所述待存储对象相关联的目标放置策略进行解析,得到所述目标放置策略中添加的多个写入规则及其对应的执行优先级;
按照执行优先级的高低顺序根据对应的所述写入规则将所述存储对象在相应的存储介质中进行分层存储;其中,所述存储介质包括存放高频访问数据的第一存储介质和存放低频访问数据的第二存储介质。
可选的,所述对与所述待存储对象相关联的目标放置策略进行解析,得到所述目标放置策略中添加的多个写入规则及其对应的执行优先级,包括:
对与所述待存储对象相关联的所述目标放置策略进行解析,得到所述目标放置策略中添加的指定规则和匹配规则,所述指定规则的执行优先级高于所述匹配规则的执行优先级;其中,所述指定规则定义了客户端指定存储类别的写入方式,所述匹配规则定义了内容匹配的写入方式。
可选的,所述按照执行优先级的高低顺序根据对应的所述写入规则将所述存储对象在相应的存储介质中进行分层存储,包括:
根据所述指定规则定义的写入方式将所述存储对象在相应的存储介质中进行分层存储,如果存储失败,则根据所述匹配规则定义的写入方式将所述存储对象在相应的存储介质中进行分层存储。
可选的,所述对与所述待存储对象相关联的目标放置策略进行解析,得到所述目标放置策略中添加的多个写入规则及其对应的执行优先级,包括:
对与所述待存储对象相关联的所述目标放置策略进行解析,得到所述目标放置策略中添加的缺省规则,所述匹配规则的执行优先级高于缺省规则的执行优先级;其中,所述缺省规则定义了以对象大小为基准的写入方式。
可选的,所述根据所述匹配规则定义的写入方式将所述存储对象在相应的存储介质中进行分层存储之后,还包括:
如果存储失败,则根据所述缺省规则定义的写入方式将所述存储对象在相应的存储介质中进行分层存储。
可选的,所述根据所述缺省规则定义的写入方式将所述存储对象在相应的存储介质中进行分层存储,包括:
根据所述缺省规则定义的写入方式确定所述待存储对象的对象大小,并基于所述缺省规则中设置的数据大小阈值与所述待存储对象的对象大小之间的数量关系将所述存储对象在相应的存储介质中进行分层存储。
可选的,所述基于所述缺省规则中设置的数据大小阈值与所述待存储对象的对象大小之间的数量关系将所述存储对象在相应的存储介质中进行分层存储,包括:
如果所述待存储对象的对象大小小于所述缺省规则中设置的数据大小阈值,则将所述待存储对象写入所述第一存储介质,否则将所述待存储对象写入所述第二存储介质。
可选的,所述第一存储介质为由固态硬盘构成的热存储池,所述第二存储介质为由机械硬盘构成的冷存储池。
可选的,所述根据所述指定规则定义的写入方式获取所述待存储对象携带的字段参数之前,还包括:
判断支持参数指定类别的功能是否开启,如果是,则执行根据所述指定规则定义的写入方式对所述待存储对象进行分层存储的步骤;
如果否,则判定存储失败,并执行根据所述匹配规则定义的写入方式将所述存储对象在相应的存储介质中进行分层存储的步骤。
可选的,所述根据所述指定规则定义的写入方式将所述存储对象在相应的存储介质中进行分层存储,包括:
根据所述指定规则定义的写入方式获取所述待存储对象携带的字段参数;
确定出所述字段参数中的指定存储类别,以将所述待存储对象写入与所述指定存储类别关联的存储介质。
可选的,所述根据所述指定规则定义的写入方式获取所述待存储对象携带的字段参数之前,还包括:
判断所述待存储对象是否携带有所述字段参数,如果是,则执行根据所述指定规则定义的写入方式获取所述待存储对象携带的字段参数的步骤;
如果否,则将所述待存储对象写入默认存储类别关联的存储介质。
可选的,所述根据所述匹配规则定义的写入方式将所述存储对象在相应的存储介质中进行分层存储,包括:
获取所述待存储对象的目标内容,并将所述目标内容与所述匹配规则中定义的预设条件进行匹配;
如果匹配成功,则将所述待存储对象写入与匹配成功的预设条件对应的存储类别关联的存储介质;
如果匹配失败,则拒绝将所述待存储对象写入存储介质。
可选的,所述获取所述待存储对象的目标内容,并将所述目标内容与所述匹配规则中定义的预设条件进行匹配,包括:
获取所述待存储对象的命名前缀,并将所述命名前缀与预设前缀进行匹配;
所述将所述待存储对象写入与匹配成功的预设条件对应的存储类别关联的存储介质,包括:
将所述待存储对象写入与匹配成功的预设前缀对应的存储类别关联的存储介质。
可选的,所述数据分层存储方法,还包括:
根据数据迁移策略创建水位扫描线程,并利用所述水位扫描线程对所述第二存储介质的当前使用情况进行检测;
如果检测到所述第二存储介质的存储容量达到了预设水位上限,则将所述第二存储介质中的当前存储对象迁移至所述第一存储介质。
可选的,如果检测到所述第二存储介质的存储容量达到了预设水位上限之后,还包括:
遍历查询存储桶信息,以获取开启了桶水位转移开关的目标存储桶;
对所述目标存储桶进行遍历,以从桶分片上获取索引标记;
根据所述索引标记对所述第二存储介质中的当前存储对象进行定位,以便根据定位结果将所述第二存储介质中的当前存储对象迁移至所述第一存储介质。
可选的,所述将所述第二存储介质中的当前存储对象迁移至所述第一存储介质,包括:
判断即将迁移的当前存储对象的对象大小是否小于数据大小阈值;
如果是,则将即将迁移的当前存储对象添加至聚合队列,等待聚合后再迁移至所述第一存储介质;
如果否,则将即将迁移的当前存储对象直接迁移至所述第一存储介质。
可选的,所述数据分层存储方法,还包括:
根据所述数据迁移策略创建生命周期扫描线程,并利用所述生命周期扫描线程对所述第二存储介质中的当前存储对象的生命周期进行检测;
将到达转移时间的当前存储对象转移至与预设存储类别关联的存储介质。
可选的,如果检测到所述第二存储介质的存储容量达到了预设水位上限之后,还包括:
如果所述第二存储介质中存在当前存储对象未达转移时间,仍然将未达转移时间的当前存储对象迁移至所述第一存储介质。
本申请的第二方面提供了一种数据分层存储装置,包括:
对象获取模块,用于获取上传的待存储对象;
策略解析模块,用于对与所述待存储对象相关联的目标放置策略进行解析,得到所述目标放置策略中添加的多个写入规则及其对应的执行优先级;
分层存储模块,用于按照执行优先级的高低顺序根据对应的所述写入规则将所述存储对象在相应的存储介质中进行分层存储;其中,所述存储介质包括存放高频访问数据的第一存储介质和存放低频访问数据的第二存储介质。
本申请的第三方面提供了一种电子设备,所述电子设备包括处理器和存储器;其中所述存储器用于存储计算机程序,所述计算机程序由所述处理器加载并执行以实现前述数据分层存储方法。
本申请的第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机可执行指令,所述计算机可执行指令被处理器加载并执行时,实现前述数据分层存储方法。
本申请中,先获取上传的待存储对象;然后对与所述待存储对象相关联的目标放置策略进行解析,得到所述目标放置策略中添加的多个写入规则及其对应的执行优先级;最后按照执行优先级的高低顺序根据对应的所述写入规则将所述存储对象在相应的存储介质中进行分层存储;其中,所述存储介质包括存放高频访问数据的第一存储介质和存放低频访问数据的第二存储介质。
本申请的有益效果为:本申请通过制定多写入规则下的目标放置策略,多个写入规则之间具有优先级顺序,在对待存储对象进行分层存储时,根据优先级顺序选择合适的写入规则来将待存储对象存储至相应存储介质,从而能够充分体现不同存储介质的读写性能优势,提高存储利用率以应对快速增长的数据压力。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请提供的一种数据分层存储方法流程图;
图2为本申请提供的一种具体对象写入方法流程图;
图3为本申请提供的一种具体的数据分层存储方法示意图;
图4为本申请提供的一种具体的基于数据分层存储的数据迁移方法流程图;
图5为本申请提供的一种对象分层存储场景下结合水位控制的数据分层机制架构图;
图6为本申请提供的一种具体的数据迁移方法示意图;
图7为本申请提供的一种数据分层存储装置结构示意图;
图8为本申请提供的一种数据分层存储电子设备结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
现有的分级存储技术,由于存储桶的放置策略单一不完善,导致同一个存储桶中不同存储类别的数据目前无法有效区分,存放在相同存储池中,无法体现出不同存储介质的读写性能优势。针对上述技术缺陷,本申请提供一种数据分层存储方案,通过制定多写入规则下的目标放置策略,多个写入规则之间具有优先级顺序,在对待存储对象进行分层存储时,根据优先级顺序选择合适的写入规则来将待存储对象存储至相应存储介质,从而能够充分体现不同存储介质的读写性能优势,提高存储利用率以应对快速增长的数据压力。
图1为本申请实施例提供的一种数据分层存储方法流程图。参见图1所示,该数据分层存储方法包括:
S11:获取上传的待存储对象。
本实施例中,首先获取上传的待存储对象。所述待存储对象由用户上传,这里的存储方式为对象存储(Object-Based Storage),符合简单存储服务(Simple StorageService)下的S3协议规范。
S12:对与所述待存储对象相关联的目标放置策略进行解析,得到所述目标放置策略中添加的多个写入规则及其对应的执行优先级。
本实施例中,在获取到所述待存储对象之后,对与所述待存储对象相关联的目标放置策略进行解析,得到所述目标放置策略中添加的多个写入规则及其对应的执行优先级。用户可以在管理软件上预先设置多个写入规则从而制定所述目标放置策略。
本实施例中的所述目标放置策略中设置了三个层面的写入规则:指定规则、匹配规则、缺省规则。相应的,对所述目标放置策略进行解析的过程具体为:一方面,对与所述待存储对象相关联的所述目标放置策略进行解析,得到所述目标放置策略中添加的指定规则和匹配规则;其中,所述指定规则定义了客户端指定存储类别的写入方式,所述匹配规则定义了内容匹配的写入方式。另一方面,对与所述待存储对象相关联的所述目标放置策略进行解析,得到所述目标放置策略中添加的缺省规则,所述匹配规则的执行优先级高于缺省规则的执行优先级。其中,所述指定规则的执行优先级高于所述匹配规则的执行优先级,所述缺省规则定义了以对象大小为基准的写入方式。
S13:按照执行优先级的高低顺序根据对应的所述写入规则将所述存储对象在相应的存储介质中进行分层存储;其中,所述存储介质包括存放高频访问数据的第一存储介质和存放低频访问数据的第二存储介质。
本实施例中,按照执行优先级的高低顺序根据对应的所述写入规则将所述存储对象在相应的存储介质中进行分层存储。所述存储介质包括存放高频访问数据的第一存储介质和存放低频访问数据的第二存储介质,其中,所述第一存储介质为由固态硬盘(SSD)构成的热存储池,所述第二存储介质为由机械硬盘(HDD)构成的冷存储池。上述步骤的具体流程为(图2):
S131:根据所述指定规则定义的写入方式将所述存储对象在相应的存储介质中进行分层存储。
本实施例中,由于所述指定规则的执行优先级最高,因此先执行所述指定规则。即先根据所述指定规则定义的写入方式将所述存储对象在相应的存储介质中进行分层存储。在此之前,需要判断支持参数指定类别的功能是否开启,如果是,则执行根据所述指定规则定义的写入方式对所述待存储对象进行分层存储的步骤;如果否,则判定存储失败,并执行根据所述匹配规则定义的写入方式将所述存储对象在相应的存储介质中进行分层存储的步骤。
具体的,先根据所述指定规则定义的写入方式获取所述待存储对象携带的字段参数,然后确定出所述字段参数中的指定存储类别,以将所述待存储对象写入与所述指定存储类别关联的存储介质。其中,所述字段参数为“storage-class”,可根据该字段参数找到到对象具体存放的存储介质。在此之前,还需要判断所述待存储对象是否携带有所述字段参数,如果是,则执行根据所述指定规则定义的写入方式获取所述待存储对象携带的字段参数的步骤;如果否,则将所述待存储对象写入默认存储类别关联的存储介质。默认存储类别可以表示为Standard,用户在不指定对象的存放位置时,会把对象存放到该类别关联的存储池中。
当然,根据所述指定规则定义的写入方式将所述存储对象在相应的存储介质中进行分层存储的前提是开启了分级功能,如果未开启数据分层功能,则将所述待存储对象存放至默认存储类别关联的存储介质。
S132:如果存储失败,则根据所述匹配规则定义的写入方式将所述存储对象在相应的存储介质中进行分层存储。
本实施例中,如果执行所述指定规则定义的写入方式失败,接着执行下一个优先级的规则,即根据所述匹配规则定义的写入方式将所述存储对象在相应的存储介质中进行分层存储。具体的,获取所述待存储对象的目标内容,并将所述目标内容与所述匹配规则中定义的预设条件进行匹配;如果匹配成功,则将所述待存储对象写入与匹配成功的预设条件对应的存储类别关联的存储介质;如果匹配失败,则拒绝将所述待存储对象写入存储介质。
上述目标内容可以是所述待存储对象的命名前缀,在这种匹配规则下,先获取所述待存储对象的命名前缀,并将所述命名前缀与预设前缀进行匹配;
将所述待存储对象写入与匹配成功的预设前缀对应的存储类别关联的存储介质。
S133:如果存储失败,则根据所述缺省规则定义的写入方式将所述存储对象在相应的存储介质中进行分层存储。
本实施例中,如果执行所述匹配规则定义的写入方式失败,才根据所述缺省规则定义的写入方式将所述存储对象在相应的存储介质中进行分层存储。具体的,根据所述缺省规则定义的写入方式确定所述待存储对象的对象大小,并基于所述缺省规则中设置的数据大小阈值与所述待存储对象的对象大小之间的数量关系将所述存储对象在相应的存储介质中进行分层存储。如果所述待存储对象的对象大小小于所述缺省规则中设置的数据大小阈值,则将所述待存储对象写入所述第一存储介质,否则将所述待存储对象写入所述第二存储介质。例如,数据大小阈值可以设置为512k,如果所述待存储对象的对象大小小于512k,则可将其定义为小对象,反之定义为大对象,将小对象写入热存储池,将大对象写入冷存储池。图3所示为上述分级存储对应的详细过程。
可见,本申请实施例先获取上传的待存储对象;然后对与所述待存储对象相关联的目标放置策略进行解析,得到所述目标放置策略中添加的多个写入规则及其对应的执行优先级;最后按照执行优先级的高低顺序根据对应的所述写入规则将所述存储对象在相应的存储介质中进行分层存储;其中,所述存储介质包括存放高频访问数据的第一存储介质和存放低频访问数据的第二存储介质。本申请实施例通过制定多写入规则下的目标放置策略,多个写入规则之间具有优先级顺序,在对待存储对象进行分层存储时,根据优先级顺序选择合适的写入规则来将待存储对象存储至相应存储介质,从而能够充分体现不同存储介质的读写性能优势,提高存储利用率以应对快速增长的数据压力。
图4为本申请实施例提供的一种具体的基于数据分层存储的数据迁移方法流程图。参见图4所示,该基于数据分层存储的数据迁移方法包括:
S21:根据数据迁移策略创建水位扫描线程,并利用所述水位扫描线程对第二存储介质的当前使用情况进行检测。
在分层存储的基础上,所述第二存储介质中存储数据量会越来越多,如果不管理很容易造成存储介质写满数据无法写入的状况,因此需要定期进行数据迁移。本实施例引入添加了水位控制的数据迁移策略。先根据数据迁移策略创建水位扫描线程,并利用所述水位扫描线程对第二存储介质的当前使用情况进行检测。
S22:如果检测到所述第二存储介质的存储容量达到了预设水位上限,则将所述第二存储介质中的当前存储对象迁移至第一存储介质。
本实施例中,如果检测到所述第二存储介质的存储容量达到了预设水位上限,则将所述第二存储介质中的当前存储对象迁移至第一存储介质。具体的,先遍历查询存储桶信息,以获取开启了桶水位转移开关的目标存储桶,然后对所述目标存储桶进行遍历,以从桶分片上获取索引标记,最后根据所述索引标记对所述第二存储介质中的当前存储对象进行定位,以便根据定位结果将所述第二存储介质中的当前存储对象迁移至所述第一存储介质。由此可见,本实施例的水位迁移修改水位转移控制颗粒度为桶级别,给每个桶添加水位转移开关及水位线设置,可实现桶级别的数据迁移,将桶中数据流向默认或者指定的下级存储中。
本实施例中,所述预设水位上限默认设置为70%。在进行数据迁移时,可以设置数据的流向,根据数据的流向迁移,如果未设置数据的流向,可默认迁移至下级存储的标准存储类别中,如迁移至所述第一存储介质。
S23:判断即将迁移的当前存储对象的对象大小是否小于数据大小阈值。
S24:如果是,则将即将迁移的当前存储对象添加至聚合队列,等待聚合后再迁移至所述第一存储介质,如果否,则将即将迁移的当前存储对象直接迁移至所述第一存储介质。
本实施例中,在迁移数据时,需要先判断即将迁移的当前存储对象的对象大小是否小于数据大小阈值。同样的,这里的数据大小阈值也可以为512k。如果是,则将即将迁移的当前存储对象添加至聚合队列,等待聚合后再迁移至所述第一存储介质,如果否,则将即将迁移的当前存储对象直接迁移至所述第一存储介质。
需要说明的是,为了提高迁移效率,本实施例还增加了一个生命周期扫描线程与上述水位扫描线程同时检测。具体的,根据数据迁移策略创建生命周期扫描线程,并利用所述生命周期扫描线程对第二存储介质中的当前存储对象的生命周期进行检测。将到达转移时间的当前存储对象转移至与预设存储类别关联的存储介质。即若设置了到期转移,对象会从写入时间计算,在达转移时间后后,执行分层转移动作,转移到指定的存储类别中。这里需要说明的是,水位扫描的优先级高于生命周期扫描,如果所述第二存储介质中存在当前存储对象未达转移时间,仍然将未达转移时间的当前存储对象迁移至所述第一存储介质。即水位转移条件优先,即使未满足时间转移条件,水位达到后也会进行扫描转移。
可见,本申请实施例先根据数据迁移策略创建水位扫描线程,并利用所述水位扫描线程对第二存储介质的当前使用情况进行检测。如果检测到所述第二存储介质的存储容量达到了预设水位上限,则将所述第二存储介质中的当前存储对象迁移至第一存储介质。在迁移时,还需要判断即将迁移的当前存储对象的对象大小是否小于数据大小阈值。如果是,则将即将迁移的当前存储对象添加至聚合队列,等待聚合后再迁移至所述第一存储介质,如果否,则将即将迁移的当前存储对象直接迁移至所述第一存储介质。能够有效缓解热存储池的存储压力,减少热存储池写满的风险,保证业务稳定的同时延长热存储池的使用周期,节省成本。
下面综合上述两个实施例,将在对象分层存储场景下结合水位控制的数据分层机制下的实现逻辑进行示例说明,图5为相应的机制架构图,图6为相应的数据迁移过程示意图。
Step1:创建默认缺省规则,在对象写元数据流程中添加缺省规则的判断控制大小对象的写入流向;
Step2:在桶的分级策略中添加水位转移控制开关及参数配置项,新增水位扫描线程;
Step3:开启分级后,对象的上传需解析对象的分层策略,对于使用缺省策略的上传流程,对写到热存储池上的对象添加索引标记,用于扫描迁移;
Step4:水位扫描线程随rgw网关启动工作,达到水位上限时,遍历查询桶信息,获取开启桶水位转移开关的桶;
Step5:遍历处理获取到的桶,从桶分片上获取上传对象时记录的索引标记,找到放在热存储池中的对象;
Step6:对象的元数据解析对象的生命周期转移规则,若有且小于当前时间跳至Step5继续处理下一个对象;
Step7:判断对象是否是小对象(<512K),若是加入聚合队列,等待聚合后转移,若不是直接加入转移队列;
Step8:对象转移后删除原对象,并清除桶分片上的索引信息。
参见图7所示,本申请实施例还相应公开了一种数据分层存储装置,包括:
对象获取模块11,用于获取上传的待存储对象;
策略解析模块12,用于对与所述待存储对象相关联的目标放置策略进行解析,得到所述目标放置策略中添加的多个写入规则及其对应的执行优先级;
分层存储模块13,用于按照执行优先级的高低顺序根据对应的所述写入规则将所述存储对象在相应的存储介质中进行分层存储;其中,所述存储介质包括存放高频访问数据的第一存储介质和存放低频访问数据的第二存储介质。
可见,本申请实施例先获取上传的待存储对象;然后对与所述待存储对象相关联的目标放置策略进行解析,得到所述目标放置策略中添加的多个写入规则及其对应的执行优先级;最后按照执行优先级的高低顺序根据对应的所述写入规则将所述存储对象在相应的存储介质中进行分层存储;其中,所述存储介质包括存放高频访问数据的第一存储介质和存放低频访问数据的第二存储介质。本申请实施例通过制定多写入规则下的目标放置策略,多个写入规则之间具有优先级顺序,在对待存储对象进行分层存储时,根据优先级顺序选择合适的写入规则来将待存储对象存储至相应存储介质,从而能够充分体现不同存储介质的读写性能优势,提高存储利用率以应对快速增长的数据压力。
在一些具体实施例中,所述策略解析模块12,具体包括:
第一解析单元,用于对与所述待存储对象相关联的所述目标放置策略进行解析,得到所述目标放置策略中添加的指定规则和匹配规则,所述指定规则的执行优先级高于所述匹配规则的执行优先级;其中,所述指定规则定义了客户端指定存储类别的写入方式,所述匹配规则定义了内容匹配的写入方式;
第二解析单元,用于对与所述待存储对象相关联的所述目标放置策略进行解析,得到所述目标放置策略中添加的缺省规则,所述匹配规则的执行优先级高于缺省规则的执行优先级;其中,所述缺省规则定义了以对象大小为基准的写入方式。
在一些具体实施例中,所述分层存储模块13,具体包括:
第一分层存储单元,用于根据所述指定规则定义的写入方式将所述存储对象在相应的存储介质中进行分层存储,如果存储失败,则根据所述匹配规则定义的写入方式将所述存储对象在相应的存储介质中进行分层存储;
第二分层存储单元,用于如果存储失败,则根据所述缺省规则定义的写入方式将所述存储对象在相应的存储介质中进行分层存储。
在一些具体实施例中,所述第二分层存储单元,具体用于根据所述缺省规则定义的写入方式确定所述待存储对象的对象大小,并基于所述缺省规则中设置的数据大小阈值与所述待存储对象的对象大小之间的数量关系将所述存储对象在相应的存储介质中进行分层存储。
在一些具体实施例中,所述第二分层存储单元,具体还用于如果所述待存储对象的对象大小小于所述缺省规则中设置的数据大小阈值,则将所述待存储对象写入所述第一存储介质,否则将所述待存储对象写入所述第二存储介质。
在一些具体实施例中,所述数据分层存储装置中的所述第一存储介质为由固态硬盘构成的热存储池,所述第二存储介质为由机械硬盘构成的冷存储池。
在一些具体实施例中,所述数据分层存储装置还包括:
功能判断模块,用于判断支持参数指定类别的功能是否开启,如果是,则执行根据所述指定规则定义的写入方式对所述待存储对象进行分层存储的步骤;如果否,则判定存储失败,并执行根据所述匹配规则定义的写入方式将所述存储对象在相应的存储介质中进行分层存储的步骤。
在一些具体实施例中,所述第一分层存储单元,具体包括:
参数判断子单元,用于判断所述待存储对象是否携带有所述字段参数,如果是,则执行根据所述指定规则定义的写入方式获取所述待存储对象携带的字段参数的步骤;如果否,则将所述待存储对象写入默认存储类别关联的存储介质;
参数获取子单元,用于根据所述指定规则定义的写入方式获取所述待存储对象携带的字段参数;
类别确定子单元,用于确定出所述字段参数中的指定存储类别,以将所述待存储对象写入与所述指定存储类别关联的存储介质;
内容获取子单元,用于获取所述待存储对象的目标内容;
内容匹配子单元,用于将所述目标内容与所述匹配规则中定义的预设条件进行匹配;如果匹配成功,则将所述待存储对象写入与匹配成功的预设条件对应的存储类别关联的存储介质;如果匹配失败,则拒绝将所述待存储对象写入存储介质。
在一些具体实施例中,所述数据分层存储装置还包括:
第一迁移模块,用于根据数据迁移策略创建水位扫描线程,并利用所述水位扫描线程对所述第二存储介质的当前使用情况进行检测;如果检测到所述第二存储介质的存储容量达到了预设水位上限,则将所述第二存储介质中的当前存储对象迁移至所述第一存储介质;
第二迁移模块,用于根据所述数据迁移策略创建生命周期扫描线程,并利用所述生命周期扫描线程对所述第二存储介质中的当前存储对象的生命周期进行检测;将到达转移时间的当前存储对象转移至与预设存储类别关联的存储介质;
第三迁移模块,用于如果所述第二存储介质中存在当前存储对象未达转移时间,仍然将未达转移时间的当前存储对象迁移至所述第一存储介质。
在一些具体实施例中,所述第一迁移模块,具体包括:
第一遍历单元,用于遍历查询存储桶信息,以获取开启了桶水位转移开关的目标存储桶;
第二遍历单元,用于对所述目标存储桶进行遍历,以从桶分片上获取索引标记;
定位单元,用于根据所述索引标记对所述第二存储介质中的当前存储对象进行定位,以便根据定位结果将所述第二存储介质中的当前存储对象迁移至所述第一存储介质;
阈值判断单元,用于判断即将迁移的当前存储对象的对象大小是否小于数据大小阈值;
聚合单元,用于如果是,则将即将迁移的当前存储对象添加至聚合队列,等待聚合后再迁移至所述第一存储介质;
直接迁移单元,用于如果否,则将即将迁移的当前存储对象直接迁移至所述第一存储介质。
进一步的,本申请实施例还提供了一种电子设备。图8是根据一示例性实施例示出的电子设备20结构图,图中的内容不能认为是对本申请的使用范围的任何限制。
图8为本申请实施例提供的一种电子设备20的结构示意图。该电子设备20,具体可以包括:至少一个处理器21、至少一个存储器22、电源23、通信接口24、输入输出接口25和通信总线26。其中,所述存储器22用于存储计算机程序,所述计算机程序由所述处理器21加载并执行,以实现前述任一实施例公开的数据分层存储方法中的相关步骤。
本实施例中,电源23用于为电子设备20上的各硬件设备提供工作电压;通信接口24能够为电子设备20创建与外界设备之间的数据传输通道,其所遵循的通信协议是能够适用于本申请技术方案的任意通信协议,在此不对其进行具体限定;输入输出接口25,用于获取外界输入数据或向外界输出数据,其具体的接口类型可以根据具体应用需要进行选取,在此不进行具体限定。
另外,存储器22作为资源存储的载体,可以是只读存储器、随机存储器、磁盘或者光盘等,其上所存储的资源可以包括操作系统221、计算机程序222及数据223等,存储方式可以是短暂存储或者永久存储。
其中,操作系统221用于管理与控制电子设备20上的各硬件设备以及计算机程序222,以实现处理器21对存储器22中海量数据223的运算与处理,其可以是Windows Server、Netware、Unix、Linux等。计算机程序222除了包括能够用于完成前述任一实施例公开的由电子设备20执行的数据分层存储方法的计算机程序之外,还可以进一步包括能够用于完成其他特定工作的计算机程序。数据223可以包括电子设备20收集到的待存储对象。
进一步的,本申请实施例还公开了一种存储介质,所述存储介质中存储有计算机程序,所述计算机程序被处理器加载并执行时,实现前述任一实施例公开的数据分层存储方法步骤。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个…”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上对本发明所提供的数据分层存储方法、装置、设备及存储介质进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (21)

1.一种数据分层存储方法,其特征在于,包括:
获取上传的待存储对象;
对与所述待存储对象相关联的目标放置策略进行解析,得到所述目标放置策略中添加的多个写入规则及其对应的执行优先级;多个所述写入规则包括指定规则、匹配规则和缺省规则,所述指定规则的执行优先级高于所述匹配规则的执行优先级高于所述缺省规则的执行优先级,所述指定规则定义了客户端指定存储类别的写入方式,所述匹配规则定义了内容匹配的写入方式,所述缺省规则定义了以对象大小为基准的写入方式;
按照执行优先级的高低顺序根据对应的所述写入规则将所述存储对象在相应的存储介质中进行分层存储;其中,所述存储介质包括存放高频访问数据的第一存储介质和存放低频访问数据的第二存储介质。
2.根据权利要求1所述的数据分层存储方法,其特征在于,所述对与所述待存储对象相关联的目标放置策略进行解析,得到所述目标放置策略中添加的多个写入规则及其对应的执行优先级,包括:
对与所述待存储对象相关联的所述目标放置策略进行解析,得到所述目标放置策略中添加的指定规则和匹配规则,所述指定规则的执行优先级高于所述匹配规则的执行优先级;其中,所述指定规则定义了客户端指定存储类别的写入方式,所述匹配规则定义了内容匹配的写入方式。
3.根据权利要求2所述的数据分层存储方法,其特征在于,所述按照执行优先级的高低顺序根据对应的所述写入规则将所述存储对象在相应的存储介质中进行分层存储,包括:
根据所述指定规则定义的写入方式将所述存储对象在相应的存储介质中进行分层存储,如果存储失败,则根据所述匹配规则定义的写入方式将所述存储对象在相应的存储介质中进行分层存储。
4.根据权利要求3所述的数据分层存储方法,其特征在于,所述对与所述待存储对象相关联的目标放置策略进行解析,得到所述目标放置策略中添加的多个写入规则及其对应的执行优先级,包括:
对与所述待存储对象相关联的所述目标放置策略进行解析,得到所述目标放置策略中添加的缺省规则,所述匹配规则的执行优先级高于缺省规则的执行优先级;其中,所述缺省规则定义了以对象大小为基准的写入方式。
5.根据权利要求4所述的数据分层存储方法,其特征在于,所述根据所述匹配规则定义的写入方式将所述存储对象在相应的存储介质中进行分层存储之后,还包括:
如果存储失败,则根据所述缺省规则定义的写入方式将所述存储对象在相应的存储介质中进行分层存储。
6.根据权利要求5所述的数据分层存储方法,其特征在于,所述根据所述缺省规则定义的写入方式将所述存储对象在相应的存储介质中进行分层存储,包括:
根据所述缺省规则定义的写入方式确定所述待存储对象的对象大小,并基于所述缺省规则中设置的数据大小阈值与所述待存储对象的对象大小之间的数量关系将所述存储对象在相应的存储介质中进行分层存储。
7.根据权利要求6所述的数据分层存储方法,其特征在于,所述基于所述缺省规则中设置的数据大小阈值与所述待存储对象的对象大小之间的数量关系将所述存储对象在相应的存储介质中进行分层存储,包括:
如果所述待存储对象的对象大小小于所述缺省规则中设置的数据大小阈值,则将所述待存储对象写入所述第一存储介质,否则将所述待存储对象写入所述第二存储介质。
8.根据权利要求7所述的数据分层存储方法,其特征在于,所述第一存储介质为由固态硬盘构成的热存储池,所述第二存储介质为由机械硬盘构成的冷存储池。
9.根据权利要求3所述的数据分层存储方法,其特征在于,所述根据所述指定规则定义的写入方式获取所述待存储对象携带的字段参数之前,还包括:
判断支持参数指定类别的功能是否开启,如果是,则执行根据所述指定规则定义的写入方式对所述待存储对象进行分层存储的步骤;
如果否,则判定存储失败,并执行根据所述匹配规则定义的写入方式将所述存储对象在相应的存储介质中进行分层存储的步骤。
10.根据权利要求3所述的数据分层存储方法,其特征在于,所述根据所述指定规则定义的写入方式将所述存储对象在相应的存储介质中进行分层存储,包括:
根据所述指定规则定义的写入方式获取所述待存储对象携带的字段参数;
确定出所述字段参数中的指定存储类别,以将所述待存储对象写入与所述指定存储类别关联的存储介质。
11.根据权利要求10所述的数据分层存储方法,其特征在于,所述根据所述指定规则定义的写入方式获取所述待存储对象携带的字段参数之前,还包括:
判断所述待存储对象是否携带有所述字段参数,如果是,则执行根据所述指定规则定义的写入方式获取所述待存储对象携带的字段参数的步骤;
如果否,则将所述待存储对象写入默认存储类别关联的存储介质。
12.根据权利要求3所述的数据分层存储方法,其特征在于,所述根据所述匹配规则定义的写入方式将所述存储对象在相应的存储介质中进行分层存储,包括:
获取所述待存储对象的目标内容,并将所述目标内容与所述匹配规则中定义的预设条件进行匹配;
如果匹配成功,则将所述待存储对象写入与匹配成功的预设条件对应的存储类别关联的存储介质;
如果匹配失败,则拒绝将所述待存储对象写入存储介质。
13.根据权利要求12所述的数据分层存储方法,其特征在于,所述获取所述待存储对象的目标内容,并将所述目标内容与所述匹配规则中定义的预设条件进行匹配,包括:
获取所述待存储对象的命名前缀,并将所述命名前缀与预设前缀进行匹配;
所述将所述待存储对象写入与匹配成功的预设条件对应的存储类别关联的存储介质,包括:
将所述待存储对象写入与匹配成功的预设前缀对应的存储类别关联的存储介质。
14.根据权利要求1至13任一项所述的数据分层存储方法,其特征在于,还包括:
根据数据迁移策略创建水位扫描线程,并利用所述水位扫描线程对所述第二存储介质的当前使用情况进行检测;
如果检测到所述第二存储介质的存储容量达到了预设水位上限,则将所述第二存储介质中的当前存储对象迁移至所述第一存储介质。
15.根据权利要求14所述的数据分层存储方法,其特征在于,如果检测到所述第二存储介质的存储容量达到了预设水位上限之后,还包括:
遍历查询存储桶信息,以获取开启了桶水位转移开关的目标存储桶;
对所述目标存储桶进行遍历,以从桶分片上获取索引标记;
根据所述索引标记对所述第二存储介质中的当前存储对象进行定位,以便根据定位结果将所述第二存储介质中的当前存储对象迁移至所述第一存储介质。
16.根据权利要求14所述的数据分层存储方法,其特征在于,所述将所述第二存储介质中的当前存储对象迁移至所述第一存储介质,包括:
判断即将迁移的当前存储对象的对象大小是否小于数据大小阈值;
如果是,则将即将迁移的当前存储对象添加至聚合队列,等待聚合后再迁移至所述第一存储介质;
如果否,则将即将迁移的当前存储对象直接迁移至所述第一存储介质。
17.根据权利要求14所述的数据分层存储方法,其特征在于,还包括:
根据所述数据迁移策略创建生命周期扫描线程,并利用所述生命周期扫描线程对所述第二存储介质中的当前存储对象的生命周期进行检测;
将到达转移时间的当前存储对象转移至与预设存储类别关联的存储介质。
18.根据权利要求17所述的数据分层存储方法,其特征在于,如果检测到所述第二存储介质的存储容量达到了预设水位上限之后,还包括:
如果所述第二存储介质中存在当前存储对象未达转移时间,仍然将未达转移时间的当前存储对象迁移至所述第一存储介质。
19.一种数据分层存储装置,其特征在于,包括:
对象获取模块,用于获取上传的待存储对象;
策略解析模块,用于对与所述待存储对象相关联的目标放置策略进行解析,得到所述目标放置策略中添加的多个写入规则及其对应的执行优先级;多个所述写入规则包括指定规则、匹配规则和缺省规则,所述指定规则的执行优先级高于所述匹配规则的执行优先级高于所述缺省规则的执行优先级,所述指定规则定义了客户端指定存储类别的写入方式,所述匹配规则定义了内容匹配的写入方式,所述缺省规则定义了以对象大小为基准的写入方式;
分层存储模块,用于按照执行优先级的高低顺序根据对应的所述写入规则将所述存储对象在相应的存储介质中进行分层存储;其中,所述存储介质包括存放高频访问数据的第一存储介质和存放低频访问数据的第二存储介质。
20.一种电子设备,其特征在于,所述电子设备包括处理器和存储器;其中所述存储器用于存储计算机程序,所述计算机程序由所述处理器加载并执行以实现如权利要求1至18任一项所述的数据分层存储方法。
21.一种计算机可读存储介质,其特征在于,用于存储计算机可执行指令,所述计算机可执行指令被处理器加载并执行时,实现如权利要求1至18任一项所述的数据分层存储方法。
CN202310173722.6A 2023-02-28 2023-02-28 一种数据分层存储方法、装置、设备及存储介质 Active CN115840543B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310173722.6A CN115840543B (zh) 2023-02-28 2023-02-28 一种数据分层存储方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310173722.6A CN115840543B (zh) 2023-02-28 2023-02-28 一种数据分层存储方法、装置、设备及存储介质

Publications (2)

Publication Number Publication Date
CN115840543A CN115840543A (zh) 2023-03-24
CN115840543B true CN115840543B (zh) 2023-05-16

Family

ID=85580264

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310173722.6A Active CN115840543B (zh) 2023-02-28 2023-02-28 一种数据分层存储方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN115840543B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116136846B (zh) * 2023-04-19 2023-07-11 苏州浪潮智能科技有限公司 一种非结构化对象数据的管理方法、装置及存储系统
CN116627356B (zh) * 2023-07-21 2023-11-14 江苏华存电子科技有限公司 一种大容量存储数据的分布控制方法及系统

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115576505A (zh) * 2022-12-13 2023-01-06 浪潮电子信息产业股份有限公司 一种数据存储方法、装置、设备及可读存储介质

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103106047A (zh) * 2013-01-29 2013-05-15 浪潮(北京)电子信息产业有限公司 一种基于对象的存储系统及其存储方法
CN103631931B (zh) * 2013-12-06 2017-11-03 浪潮(北京)电子信息产业有限公司 一种数据分级存储方法及系统
CN106406759B (zh) * 2016-09-13 2019-12-31 苏州浪潮智能科技有限公司 一种数据存储方法及装置
CN111208934B (zh) * 2018-11-21 2021-07-09 华为技术有限公司 一种数据存储方法及装置
US11528236B2 (en) * 2020-12-30 2022-12-13 EMC IP Holding Company LLC User-based data tiering
CN113918098A (zh) * 2021-10-28 2022-01-11 北京金山云网络技术有限公司 一种数据处理方法、装置、设备及介质
CN114153806A (zh) * 2021-12-03 2022-03-08 杭州安恒信息技术股份有限公司 一种文件存储方法、装置、设备及存储介质
CN113886331B (zh) * 2021-12-03 2022-03-08 苏州浪潮智能科技有限公司 分布式对象存储方法、装置、电子设备及可读存储介质
CN114756523A (zh) * 2022-03-31 2022-07-15 苏州浪潮智能科技有限公司 一种分布式存储方法、装置以及介质

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115576505A (zh) * 2022-12-13 2023-01-06 浪潮电子信息产业股份有限公司 一种数据存储方法、装置、设备及可读存储介质

Also Published As

Publication number Publication date
CN115840543A (zh) 2023-03-24

Similar Documents

Publication Publication Date Title
CN115840543B (zh) 一种数据分层存储方法、装置、设备及存储介质
US8914412B2 (en) Determining file ownership of active and inactive files based on file access history
US20080052331A1 (en) Data arrangement management system, method, and program
US20020069280A1 (en) Method and system for scalable, high performance hierarchical storage management
US20060224550A1 (en) Policy Based Resource Management for Legacy Data
US20180032348A1 (en) Efficient sharing of artifacts between collaboration applications
CN104361042A (zh) 一种信息检索方法及装置
CN107704203A (zh) 聚合大文件的删除方法、装置、设备及计算机存储介质
CN109240607B (zh) 一种文件读取方法和装置
JP2004302505A (ja) データ移行支援システム、プログラム、装置および取外し可能な記憶装置またはデータ移行が完了した記憶媒体の識別方法
CN111769933A (zh) 一种监控文件变化方法、装置、电子设备及存储介质
WO2016197814A1 (zh) 垃圾文件识别及管理方法、识别装置、管理装置和终端
CN107704633A (zh) 一种文件迁移的方法和系统
US20230229580A1 (en) Dynamic index management for computing storage resources
CN109213898A (zh) 视频监控系统的录像检索方法及装置
CN110352410A (zh) 跟踪索引节点的访问模式以及预提取索引节点
US9594677B2 (en) Computer system, data management method, and recording medium for storing program
CN114138558A (zh) 一种对象存储方法、装置、电子设备和存储介质
CN104391947B (zh) 海量gis数据实时处理方法及系统
CN114510474A (zh) 基于时间衰减的样本删除方法及其装置、存储介质
KR101272656B1 (ko) 태그 기반 파일 관리 방법 및 그 시스템
US11662907B2 (en) Data migration of storage system
CN111752941B (zh) 一种数据存储、访问方法、装置、服务器及存储介质
EP1215590B1 (en) Method and system for scalable, high performance hierarchical storage management
CN115269745B (zh) 一种关系型数据至图数据映射方法、设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant