一种数据存储方法、装置、电子设备及存储介质制造方法及图纸

技术编号:35915508 阅读:15 留言:0更新日期:2022-12-10 10:57
本发明专利技术公开了一种数据存储方法,应用于分布式存储系统的存储节点,包括:响应于获取到管理节点发送的对象创建指令,创建副本对象和副本子对象;通过副本对象保存管理节点发送的待存储数据;根据副本编号,在各副本子对象中确定目标副本子对象,并将目标副本子对象中的待存储子数据存储至缓存模块,以及将非目标副本子对象中的待存储子数据存储至硬盘模块。本发明专利技术实施例的技术方案,不但实现了待存储数据的副本存储,即实现了数据备份,同时,各个存储节点的缓存模块中不包括重复数据,避免了分布式存储系统中缓存资源的浪费,另外,管理节点可以通过多个存储节点的缓存模块读取完整的存储数据,提高了存储数据的读取效率。提高了存储数据的读取效率。提高了存储数据的读取效率。

【技术实现步骤摘要】
一种数据存储方法、装置、电子设备及存储介质


[0001]本专利技术涉及数据存储领域,尤其涉及一种数据存储方法、装置、电子设备及存储介质。

技术介绍

[0002]分布式存储系统为了保障数据的可用性,通常会采用副本模式进行数据冗余存储,即以多个副本形式存储相同数据,以实现数据备份。
[0003]为了降低读写接口的响应时间,通常会在存储节点上部署缓存,待存储数据通过缓存存储至硬盘中,显然在副本模式下,一份待存储数据需要写入到多个存储节点的缓存中。
[0004]然而,上述数据存储方式,各个存储节点的缓存中保存了相同的存储数据,但事实上一份存储数据即可满足管理节点的读取调用需求,上述冗余数据的出现占用了缓存中大量的存储空间,极大地造成了缓存资源的浪费。

技术实现思路

[0005]本专利技术提供了一种数据存储方法及装置,以解决冗余数据占用较多缓存资源的问题。
[0006]根据本专利技术的一方面,提供了一种数据存储方法,应用于分布式存储系统的存储节点,包括:
[0007]响应于获取到管理节点发送的对象创建指令,根据获取到的副本编号创建副本对象,并根据获取到的副本数量在所述副本对象中创建副本子对象;
[0008]通过所述副本对象保存所述管理节点发送的待存储数据,以使所述副本对象中的各所述副本子对象,与所述待存储数据中的各个待存储子数据一一匹配;
[0009]根据所述副本编号,在各所述副本子对象中确定目标副本子对象,并将所述目标副本子对象中的待存储子数据存储至缓存模块,以及将非目标副本子对象中的待存储子数据存储至硬盘模块。
[0010]在根据所述副本编号,在各所述副本子对象中确定目标副本子对象之后,还包括:将所述副本对象中的所述待存储数据存储至缓存模块,并通过所述缓存模块将所述待存储数据复制到硬盘模块;在所述缓存模块中,继续存储所述目标副本子对象对应的待存储子数据,并删除非目标副本子对象对应的待存储子数据。在使得存储节点的缓存模块中不包括重复数据,避免分布式存储系统中缓存资源浪费的同时,实现了数据的异步存储,提高了数据存储效率。
[0011]在通过所述副本对象保存所述管理节点发送的待存储数据,以使所述副本对象中的各所述副本子对象,与所述待存储数据中的各个待存储子数据一一匹配之后,还包括:根据修正系数、所述副本数量、所述副本编号以及各所述副本子对象的副本子编号,为各所述副本子对象设置权重;所述根据所述副本编号,在各所述副本子对象中确定目标副本子对
象,包括:根据各所述副本子对象的权重以及与预设权重阈值,在各所述副本子对象中确定目标副本子对象;其中,若当前副本子对象的权重大于等于预设权重阈值,则当前副本子对象为目标副本子对象;若当前副本子对象的权重小于预设权重阈值,则当前副本子对象为非目标副本子对象;所述预设权重阈值与缓存模块的剩余存储容量相关。存储节点通过为当前副本对象中的副本子对象设置权重,使得在缓存模块中剩余存储空间较大时,在缓存模块中存储了较多数量的待存储子数据,充分利用了缓存模块读写速率较快的特点,实现了数据的快速写入和读取;而在缓存模块中剩余存储空间较小时,仅在缓存模块中存储较少数量的待存储子数据,以实现数据的精准存储,在减少缓存资源浪费的同时,仍然确保了分布式存储系统的缓存模块中当前待存储数据的完整性。
[0012]所述数据存储方法,还包括:响应于检测到所述缓存模块的剩余存储容量小于等于第一存储阈值,则获取所述缓存模块中各个已存储数据对应的权重;根据各所述已存储数据的权重的排序结果,依次删除权重最低的目标已存储数据,直至所述缓存模块的剩余存储容量大于等于第二存储阈值为止;其中,所述第二存储阈值大于所述第一存储阈值。通过各个已存储数据对应的权重,不但实现了相同数据内部各个子数据之间的重要性比对,还可以实现不同数据之间各个子数据之间的重要性比对,相比于现有技术中,存储节点仅能依靠已有的缓存淘汰算法,基于自身单一存储节点的数据记录进行缓存淘汰,上述技术方案基于分布式存储系统的整体性存储,为各个副本子对象分配了对应的权重,更加准确的反应了每个已存储数据的重要程度,提高了缓存淘汰结果的准确性。
[0013]根据本专利技术的另一方面,提供了一种数据存储方法,应用于分布式存储系统的管理节点,包括:
[0014]响应于获取到待存储数据,向对应的多个存储节点分别发出对象创建指令,以使各所述存储节点根据获取到的副本编号创建副本对象,并根据获取到的副本数量在所述副本对象中创建副本子对象;其中,不同的存储节点对应不同的副本编号;
[0015]根据所述副本数量对所述待存储数据进行数据拆分;其中,数据拆分后的待存储数据包括多个待存储子数据;
[0016]将数据拆分后的待存储数据发送给各所述存储节点,以使各所述存储节点根据获取到的副本编号,在各所述副本子对象中确定目标副本子对象,并将所述目标副本子对象中的待存储子数据存储至缓存模块,以及将非目标副本子对象中的待存储子数据存储至硬盘模块。
[0017]所述数据存储方法,还包括:响应于获取到数据读取指令,获取与所述数据读取指令匹配的多个目标存储节点以及各所述目标存储节点中的目标副本对象;通过各所述目标存储节点中的目标副本对象,分别获取与当前目标副本对象的副本编号匹配的目标副本子对象;通过各所述目标存储节点的目标副本子对象,分别从对应的缓存模块中获取匹配的已存储数据;将各所述已存储数据进行数据拼接,以获取拼接完成的目标存储数据,并基于所述目标存储数据响应所述数据读取指令。管理节点通过从多个存储节点的缓存模块中,获取到完整的存储数据,提高了已存储数据的读取效率,同时,各个存储节点的缓存模块中不包括重复数据,避免了分布式存储系统中缓存资源的浪费。
[0018]根据本专利技术的另一方面,提供了一种数据存储装置,应用于分布式存储系统的存储节点,包括:
[0019]副本对象创建模块,用于响应于获取到管理节点发送的对象创建指令,根据获取到的副本编号创建副本对象,并根据获取到的副本数量在所述副本对象中创建副本子对象;
[0020]匹配存储执行模块,用于通过所述副本对象保存所述管理节点发送的待存储数据,以使所述副本对象中的各所述副本子对象,与所述待存储数据中的各个待存储子数据一一匹配;
[0021]数据存储执行模块,用于根据所述副本编号,在各所述副本子对象中确定目标副本子对象,并将所述目标副本子对象中的待存储子数据存储至缓存模块,以及将非目标副本子对象中的待存储子数据存储至硬盘模块。
[0022]根据本专利技术的另一方面,提供了一种数据存储装置,应用于分布式存储系统的管理节点,包括:
[0023]对象创建指令发送模块,用于响应于获取到待存储数据,向对应的多个存储节点分别发出对象创建指令,以使各所述存储节点根据获取到的副本编号创建副本对象,并根据获取到的副本数量在所述副本对象中创建副本子对象;其中,不同的存储节点对应不同的副本编号;
[0024]数据拆分执行模块,用于根据所述副本数量对所述待存储本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据存储方法,其特征在于,应用于分布式存储系统的存储节点,包括:响应于获取到管理节点发送的对象创建指令,根据获取到的副本编号创建副本对象,并根据获取到的副本数量在所述副本对象中创建副本子对象;通过所述副本对象保存所述管理节点发送的待存储数据,以使所述副本对象中的各所述副本子对象,与所述待存储数据中的各个待存储子数据一一匹配;根据所述副本编号,在各所述副本子对象中确定目标副本子对象,并将所述目标副本子对象中的待存储子数据存储至缓存模块,以及将非目标副本子对象中的待存储子数据存储至硬盘模块。2.根据权利要求1所述的方法,其特征在于,在根据所述副本编号,在各所述副本子对象中确定目标副本子对象之后,还包括:将所述副本对象中的所述待存储数据存储至缓存模块,并通过所述缓存模块将所述待存储数据复制到硬盘模块;在所述缓存模块中,继续存储所述目标副本子对象对应的待存储子数据,并删除非目标副本子对象对应的待存储子数据。3.根据权利要求1或2所述的方法,其特征在于,在通过所述副本对象保存所述管理节点发送的待存储数据,以使所述副本对象中的各所述副本子对象,与所述待存储数据中的各个待存储子数据一一匹配之后,还包括:根据修正系数、所述副本数量、所述副本编号以及各所述副本子对象的副本子编号,为各所述副本子对象设置权重;所述根据所述副本编号,在各所述副本子对象中确定目标副本子对象,包括:根据各所述副本子对象的权重以及与预设权重阈值,在各所述副本子对象中确定目标副本子对象;其中,若当前副本子对象的权重大于等于预设权重阈值,则当前副本子对象为目标副本子对象;若当前副本子对象的权重小于预设权重阈值,则当前副本子对象为非目标副本子对象;所述预设权重阈值与缓存模块的剩余存储容量相关。4.根据权利要求3所述的方法,其特征在于,所述数据存储方法,还包括:响应于检测到所述缓存模块的剩余存储容量小于等于第一存储阈值,则获取所述缓存模块中各个已存储数据对应的权重;根据各所述已存储数据的权重的排序结果,依次删除权重最低的目标已存储数据,直至所述缓存模块的剩余存储容量大于等于第二存储阈值为止;其中,所述第二存储阈值大于所述第一存储阈值。5.一种数据存储方法,其特征在于,应用于分布式存储系统的管理节点,包括:响应于获取到待存储数据,向对应的多个存储节点分别发出对象创建指令,以使各所述存储节点根据获取到的副本编号创建副本对象,并根据获取到的副本数量在所述副本对象中创建副本子对象;其中,不同的存储节点对应不同的副本编号;根据所述副本数量对所述待存储数据进行数据拆分;其中,数据拆分后的待存储数据包括多个待存储子数据;将数据拆分后的待存储数据发送给各所述存储节点,以使各所述存储节点根据获取到的副本编号,在各所述副本子对象中确定目标副本子对象,并将所述目标副本子对象中的
待存储子数据存储至缓...

【专利技术属性】
技术研发人员:张廷全纪志祥吴瑞强惠润海卜庆忠
申请(专利权)人:天津中科曙光存储科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1