本申请实施例涉及数据存储的,具体而言,涉及一种数据冷热变化动态分层存储方法、装置及存储介质。
背景技术:
1、随着数字化的快速发展,数据连通和服务的需求越来越高,如数联网的服务体系的广泛应用,但数字化的快速发展伴随着数据量的增长,如何有效且安全的存储数据也越来越备受关注。
2、区块链作为数据流通的一种方式,具有数据不可篡改、去中心化的特点,在区块链的存储集群中包括多个存储性能不同的存储节点,在存储集群中存储区块数据时,会对一个区块在多个节点中进行备份存储,目前采用在存储集群中随机确定区块的多个备份存储节点,忽视了区块数据的冷热变化造成的存储资源分配不合理的问题,示例地,造成部分冷数据会占用高存储性能的存储节点,如何解决存储集群数据存储时存储资源分配不合理的问题是一个亟待解决的问题。
技术实现思路
1、本申请实施例提供一种数据冷热变化动态分层存储方法、装置及存储介质,旨在提高存储资源的分配合理性。
2、第一方面,本申请实施例提供一种数据冷热变化动态分层存储方法,应用于分布式账本,所述分布式账本的存储集群中所有存储节点分为热存储层、温存储层和冷存储层,所述方法包括:
3、监测所述热存储层、温存储层和冷存储层中存储的任一区块的冷热变化,其中,所述任一区块的冷热变化是由该区块的存储时间和查询次数确定的;
4、根据所述任一区块的冷热变化,确定所述任一区块是否为目标迁移区块,并确定所述目标迁移区块对应的目标存储层;
5、在所述目标存储层中确定所述目标迁移区块对应的多个目标存储节点;
6、将所述目标迁移区块存储在所述多个目标存储节点中。
7、可选地,监听所述热存储层、温存储层和冷存储层中存储的任一区块的冷热变化,包括:
8、根据所述热存储层和所述温存储层中任一区块的存储时间,确定该区块的冷热变化;
9、获取所述热存储层、温存储层和冷存储层中任一区块在目标时段内的累积查询次数,确定该区块的查询冷热变化。
10、可选地,根据所述热存储层和所述温存储层中任一区块的存储时间,确定该区块的时间冷热变化,包括:
11、当所述热存储层中任一区块的存储时间超过第一时间阈值时,将该区块添加在温区块分组中;
12、当所述温存储层中任一区块的存储时间超过第二时间阈值时,将该区块添加在冷区块分组中。
13、可选地,获取所述热存储层、温存储层和冷存储层中任一区块的累积查询次数,确定该区块的查询冷热变化,包括:
14、当所述热存储层、温存储层和冷存储层中任一区块的累积查询次数大于热数据查询次数阈值时,将该区块添加在热区块分组中;
15、当所述热存储层、温存储层和冷存储层中任一区块的累积查询次数大于温数据查询次数阈值时,将该区块添加在温区块分组中。
16、可选地,根据所述任一区块的冷热变化,确定所述任一区块是否为目标迁移区块,并确定所述目标迁移区块对应的目标存储层,包括:
17、将所述热区块分组、温区块分组以及冷区块分组中的每个区块作为目标迁移区块;
18、将所述热存储层作为所述热区块分组中任一目标迁移区块的目标存储层,将所述温存储层作为所述温区块分组中任一目标迁移区块的目标存储层,将所述冷存储层作为所述冷区块分组中任一目标迁移区块的目标存储层,其中,当任一区块分组中的任一目标迁移区块存储在目标存储中后,在该区块分组中删除该目标迁移区块。
19、可选地,在所述目标存储层中确定所述目标迁移区块对应的多个目标存储节点,包括:
20、所述目标存储层中任一节点基于所述分布式账本的系统链获取所述存储集群的集群拓扑,根据所述集群拓扑确定所述目标存储层中对应的节点列表;
21、所述目标存储层中的任一节点计算所述目标迁移区块的区块哈希与所述目标存储层的节点列表中每个节点标识的哈希值;
22、所述目标存储层中的任一节点按照递减的顺序对所述目标存储层的节点列表中每个节点对应的哈希值进行排列,排在前n位的哈希值对应的节点作为所述目标迁移区块对应的多个目标存储节点。
23、可选地,将所述目标迁移区块存储在所述多个目标存储节点中,包括:
24、所述目标迁移区块对应的任一个目标存储节点,向存储有所述目标迁移区块的节点发送迁移请求,并响应所述迁移请求的响应获取所述目标迁移区块进行存储。
25、可选地,所述方法还包括:
26、获取新增区块和所述新增区块对应的冷热存储条件,所述冷热存储条件与所述热存储层、温存储层和冷存储层中任一者存在映射关系;
27、根据所述新增区块对应的冷热存储条件,确定所述新增区块的初始存储层;
28、将所述新增区块存储在所述初始存储层的多个存储节点中。
29、第二方面,本申请实施例提供一种数据冷热变化动态分层存储装置,所述装置应用于分布式账本,所述分布式账本的存储集群中所有存储节点分为热存储层、温存储层和冷存储层,所述装置包括:
30、监测模块,用于监测所述热存储层、温存储层和冷存储层中存储的任一区块的冷热变化,其中,所述任一区块的冷热变化是由该区块的存储时间和查询次数确定的;
31、目标迁移区块确定模块,用于根据所述任一区块的冷热变化,确定所述任一区块是否为目标迁移区块,并确定所述目标迁移区块对应的目标存储层;
32、目标存储节点确定模块,用于在所述目标存储层中确定所述目标迁移区块对应的多个目标存储节点;
33、迁移存储模块,用于将所述目标迁移区块存储在所述多个目标存储节点中。
34、第三方面,本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如实施例第一方面所述的数据冷热变化动态分层存储方法。
35、有益效果:
36、分布式账本的存储集群中所有存储节点分为热存储层、温存储层和冷存储层,通过监测所述热存储层、温存储层和冷存储层中存储的任一区块的冷热变化,所述任一区块的冷热变化是由该区块的存储时间和查询次数确定的;根据所述任一区块的冷热变化,确定所述任一区块是否为目标迁移区块,并确定所述目标迁移区块对应的目标存储层;在所述目标存储层中确定所述目标迁移区块对应的多个目标存储节点;将所述目标迁移区块存储在所述多个目标存储节点中。
37、通过对存储集群中每个存储层中区块的冷热变化进行监测,根据区块的冷热变化确定目标存储层和目标存储节点,从而将冷热变化后的区块迁移至对应的节点进行存储,可以提高存储资源的分配合理性。
1.一种数据冷热变化动态分层存储方法,其特征在于,应用于分布式账本,所述分布式账本的存储集群中所有存储节点分为热存储层、温存储层和冷存储层,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,监听所述热存储层、温存储层和冷存储层中存储的任一区块的冷热变化,包括:
3.根据权利要求2所述的方法,其特征在于,根据所述热存储层和所述温存储层中任一区块的存储时间,确定该区块的时间冷热变化,包括:
4.根据权利要求3所述的方法,其特征在于,获取所述热存储层、温存储层和冷存储层中任一区块的累积查询次数,确定该区块的查询冷热变化,包括:
5.根据权利要求4所述的方法,其特征在于,根据所述任一区块的冷热变化,确定所述任一区块是否为目标迁移区块,并确定所述目标迁移区块对应的目标存储层,包括:
6.根据权利要求1所述的方法,其特征在于,在所述目标存储层中确定所述目标迁移区块对应的多个目标存储节点,包括:
7.根据权利要求1所述的方法,其特征在于,将所述目标迁移区块存储在所述多个目标存储节点中,包括:
8.根据权利要求1所述的方法,其特征在于,所述方法还包括:
9.一种数据冷热变化动态分层存储装置,其特征在于,所述装置应用于分布式账本,所述分布式账本的存储集群中所有存储节点分为热存储层、温存储层和冷存储层,所述装置包括:
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如权利要求1至8中任一项所述的数据冷热变化动态分层存储方法。