一种数据存储方法、装置、设备及存储介质与流程

未命名 10-18 阅读:103 评论:0


1.本技术涉及大数据存储技术领域,尤其涉及一种数据存储方法、装置、设备及存储介质。


背景技术:

2.企业搭建数据湖后,随着业务的发展,数据源源不断入湖,数据湖存储的压力会不断增加,在此情况下,企业通过建立分层存储架构来优化存储空间。但是,在这种分层存储架构上,对于一份数据,通常是采用多副本机制来保障数据可靠性,这会进一步加大了数据湖的存储压力。


技术实现要素:

3.本技术实施例提供一种数据存储方法、装置、设备及存储介质,以解决相关技术存在的问题,技术方案如下:
4.第一方面,本技术实施例提供了一种数据存储方法,包括:
5.对待存储数据进行热度分析,确定所述待存储数据的热度标签,所述热度标签为热标签、温标签或冷标签;
6.当所述热度标签为热标签时,将所述待存储数据存储到分布式内存中的热数据区中;
7.当所述热度标签为温标签时,将所述待存储数据存储到大数据存储节点型服务器中的温数据区中;
8.当所述热度标签为冷标签时,将所述待存储数据存储到高密度存储服务器中的冷数据区中。
9.在一种实施方式中,对待存储数据进行热度分析,确定所述待存储数据的热度标签包括:
10.获取数据访问热度指标统计信息,所述数据访问热度指标统计信息包括元数据信息对应的访问指标;
11.获取所述待存储数据的第一元数据信息;
12.根据所述第一元数据信息和所述数据访问热度指标统计信息,确定所述待存储数据对应的第一访问指标;
13.根据所述第一访问指标,确定所述待存储数据的热度标签。
14.在一种实施方式中,所述数据访问热度指标统计信息经过如下过程得到:
15.通过数据仓库工具抽取统一元数据架构中所有的表分区信息,所述表分区信息包括任一数据区的各目录信息关联的元数据信息;
16.分别统计各所述目录信息的liststatus操作记录,确定各所述目录信息的第二访问指标;
17.根据所述表分区信息和各所述目录信息的第二访问指标,得到所述数据访问热度
指标统计信息。
18.在一种实施方式中,当所述热度标签为热标签时,将所述待存储数据存储到分布式内存中的热数据区中包括:当所述热度标签为热标签时,通过调用分布式文件系统的内存数据仓库引擎将所述待存储数据存储到所述热数据区中;
19.当所述热度标签为温标签时,将所述待存储数据存储到大数据存储节点型服务器中的温数据区中包括:当所述热度标签为温标签时,控制所述分布式文件系统设置n个副本,再将所述n个副本中的m个副本冗余,调用所述m个副本将所述待存储数据存储到所述温数据区中,n为大于1的整数,m为大于1小于n的整数;
20.当所述热度标签为冷标签时,将所述待存储数据存储到高密度存储服务器中的冷数据区中包括:当所述热度标签为冷标签时,控制所述分布式文件系统采用纠删码机制将所述待存储数据存储到所述冷数据区中。
21.在一种实施方式中,所述方法还包括:
22.对所述热数据区、所述温数据区和所述冷数据区中存储的数据的热度标签进行监控;
23.若监控到温数据区中存储的第一数据对应的热度标签由温标签变更为热标签,则将所述第一数据迁移到所述热数据区中存储;
24.若监控到所述温数据区中存储的第二数据对应的热度标签由温标签变更为冷标签,则将所述第二数据迁移到所述冷数据区中存储;
25.若监控到所述热数据区中存储的第三数据对应的热度标签由热标签变更为温标签或冷标签,则将所述第三数据从所述热数据区中清除;
26.若监控到冷数据区中存储的第四数据对应的热度标签由冷标签变更为温标签,则将所述第四数据迁移到所述温数据区中存储。
27.在一种实施方式中,将所述第一数据迁移到所述热数据区中存储包括:
28.将所述第一数据加载到所述热数据区中后,修改所述第一数据的元数据信息;
29.将所述第一数据的修改后的元数据信息关联的目录信息,指向所述热数据区中的目标存储路径上。
30.在一种实施方式中,将所述第二数据迁移到所述冷数据区中存储包括:初始化所述温数据区和所述冷数据区;获取所述第二数据在所述温数据区中对应的第一源集群和第一源目录信息,以及需要迁移到的所述冷数据区中的第一目标集群和第一目标目录信息;将所述第二数据从所述第一源集群中复制到所述第一目标集群中,以及将所述第二数据对应的目录信息由所述第一源目录信息修改为所述第一目标目录信息;
31.将所述第四数据迁移到所述温数据区中存储包括:初始化所述冷数据区和所述温数据区;获取所述第四数据在所述冷数据区中对应的第二源集群和第二源目录信息,以及需要迁移到的所述温数据区中的第二目标集群和第二目标目录信息;将所述第四数据从所述第二源集群中复制到所述第二目标集群中,以及将所述第四数据对应的目录信息由所述第二源目录信息修改为所述第二目标目录信息。
32.第二方面,本技术实施例还提供了一种数据存储装置,包括:
33.分析单元,用于对待存储数据进行热度分析,确定所述待存储数据的热度标签,所述热度标签为热标签、温标签或冷标签;
34.存储单元,用于当所述热度标签为热标签时,将所述待存储数据存储到分布式内存中的热数据区中;当所述热度标签为温标签时,将所述待存储数据存储到大数据存储节点型服务器中的温数据区中;当所述热度标签为冷标签时,将所述待存储数据存储到高密度存储服务器中的冷数据区中。
35.在一种实施方式中,所述分析单元具体用于:
36.获取数据访问热度指标统计信息,所述数据访问热度指标统计信息包括元数据信息对应的访问指标;
37.获取所述待存储数据的第一元数据信息;
38.根据所述第一元数据信息和所述数据访问热度指标统计信息,确定所述待存储数据对应的第一访问指标;
39.根据所述第一访问指标,确定所述待存储数据的热度标签。
40.在一种实施方式中,所述数据访问热度指标统计信息由所述分析单元经过如下过程得到:
41.通过数据仓库工具抽取统一元数据架构中所有的表分区信息,所述表分区信息包括任一数据区的各目录信息关联的元数据信息;
42.分别统计各所述目录信息的liststatus操作记录,确定各所述目录信息的第二访问指标;
43.根据所述表分区信息和各所述目录信息的第二访问指标,得到所述数据访问热度指标统计信息。
44.在一种实施方式中,所述存储单元具体用于:
45.当所述热度标签为热标签时,通过调用分布式文件系统的内存数据仓库引擎将所述待存储数据存储到所述热数据区中;
46.当所述热度标签为温标签时,控制所述分布式文件系统设置n个副本,再将所述n个副本中的m个副本冗余,调用所述m个副本将所述待存储数据存储到所述温数据区中,n为大于1的整数,m为大于1小于n的整数;
47.当所述热度标签为冷标签时,控制所述分布式文件系统采用纠删码机制将所述待存储数据存储到所述冷数据区中。
48.在一种实施方式中,所述存储单元还用于:
49.对所述热数据区、所述温数据区和所述冷数据区中存储的数据的热度标签进行监控;
50.若监控到温数据区中存储的第一数据对应的热度标签由温标签变更为热标签,则将所述第一数据迁移到所述热数据区中存储;
51.若监控到所述温数据区中存储的第二数据对应的热度标签由温标签变更为冷标签,则将所述第二数据迁移到所述冷数据区中存储;
52.若监控到所述热数据区中存储的第三数据对应的热度标签由热标签变更为温标签或冷标签,则将所述第三数据从所述热数据区中清除;
53.若监控到冷数据区中存储的第四数据对应的热度标签由冷标签变更为温标签,则将所述第四数据迁移到所述温数据区中存储。
54.在一种实施方式中,所述存储单元具体用于:
55.将所述第一数据加载到所述热数据区中后,修改所述第一数据的元数据信息;
56.将所述第一数据的修改后的元数据信息关联的目录信息,指向所述热数据区中的目标存储路径上。
57.在一种实施方式中,所述存储单元具体用于:
58.若监控到所述温数据区中存储的第二数据对应的热度标签由温标签变更为冷标签,则初始化所述温数据区和所述冷数据区;获取所述第二数据在所述温数据区中对应的第一源集群和第一源目录信息,以及需要迁移到的所述冷数据区中的第一目标集群和第一目标目录信息;将所述第二数据从所述第一源集群中复制到所述第一目标集群中,以及将所述第二数据对应的目录信息由所述第一源目录信息修改为所述第一目标目录信息;
59.若监控到冷数据区中存储的第四数据对应的热度标签由冷标签变更为温标签,则初始化所述冷数据区和所述温数据区;获取所述第四数据在所述冷数据区中对应的第二源集群和第二源目录信息,以及需要迁移到的所述温数据区中的第二目标集群和第二目标目录信息;将所述第四数据从所述第二源集群中复制到所述第二目标集群中,以及将所述第四数据对应的目录信息由所述第二源目录信息修改为所述第二目标目录信息。
60.第三方面,本技术实施例还提供了一种电子设备,该电子设备包括:存储器和处理器。该存储器中存储指令,该指令由处理器加载并执行,以实现上述各方面任一种实施方式中的方法。其中,该存储器和该处理器通过内部连接通路互相通信。
61.第四方面,本技术实施例还提供了一种计算机可读存储介质,计算机可读存储介质内存储有计算机程序,计算机程序被计算机执行时,实现上述各方面任一种实施方式中的方法。
62.上述技术方案中的优点或有益效果至少包括:
63.相较于现有技术而言,本技术通过对待存储数据进行热度分析,确定待存储数据的热度标签,热度标签为热标签、温标签或冷标签;当热度标签为热标签时,将待存储数据存储到分布式内存中的热数据区中;当热度标签为温标签时,将待存储数据存储到大数据存储节点型服务器中的温数据区中;当热度标签为冷标签时,将待存储数据存储到高密度存储服务器中的冷数据区中,从而可以根据不同热度数据采用更为合理的存储方式进行分级存储,满足了数据湖的数据访问性能提升需求,可以缓解数据湖的存储压力,同时,还可以在降低数据存储成本的基础上,满足数据长周期存储需求,解决了存储成本与数据保留周期之间的矛盾。
64.上述概述仅仅是为了说明书的目的,并不意图以任何方式进行限制。除上述描述的示意性的方面、实施方式和特征之外,通过参考附图和以下的详细描述,本技术进一步的方面、实施方式和特征将会是容易明白的。
附图说明
65.在附图中,除非另外规定,否则贯穿多个附图相同的附图标记表示相同或相似的部件或元素。这些附图不一定是按照比例绘制的。应该理解,这些附图仅描绘了根据本技术公开的一些实施方式,而不应将其视为是对本技术范围的限制。
66.图1为本技术实施例提供的一种数据存储方法的流程示意图;
67.图2为本技术实施例提供的一种执行步骤s110的流程示意图;
68.图3为本技术实施例提供的一种得到该数据访问热度指标统计信息的流程示意图;
69.图4为本技术实施例提供的一种元数据信息分区与物理数据分级之间的对应关系的示意图;
70.图5为本技术实施例提供的另一种数据存储方法的流程示意图;
71.图6为本技术实施例提供的一种数据存储装置的结构框图;
72.图7为本技术实施例提供的一种电子设备的结构框图。
具体实施方式
73.在下文中,仅简单地描述了某些示例性实施例。正如本领域技术人员可认识到的那样,在不脱离本技术的精神或范围的情况下,可通过各种不同方式修改所描述的实施例。因此,附图和描述被认为本质上是示例性的而非限制性的。
74.相关技术中,通常采用如下两种方案来减轻数据湖的存储压力:第一种,通过扩充数据湖的节点来增加整个存储空间;第二种,通过定期数据清理机制,对数据周期较久的数据进行清理,维持数据量在预定的规模。
75.然而,上述两种方案存在较大的局限性,无法满足企业建设数据湖的生产目标即实现全业务数据链接。比如,对于上述第一种方案,一方面企业机房的规模有上限,不能无限扩充,另一方面,不断扩充节点也会导致企业的成本投入不断增加,大量的存储资源会被不常用的数据占用,投入和产出的性价比会持续拉低。对于上述第二种方案,需要控制湖内数据在一定的周期范围内,对于一些需要长周期数据的应用场景,无法进行支撑,局限了企业的用数范围。
76.综上,除了需要减轻数据湖的存储压力外,还需解决存储成本与数据保留周期之间的矛盾。基于此,本技术提出了一种可以在减轻数据湖的存储压力的同时,还可以解决存储成本与数据保留周期之间的矛盾的技术方案。
77.下面将结合附图详细介绍本技术实施例提供的技术方案。
78.图1示出根据本技术一实施例的数据存储方法的流程图。如图1所示,该方法可以包括如下步骤:
79.s110、对待存储数据进行热度分析,确定待存储数据的热度标签,热度标签为热标签、温标签或冷标签。
80.在一种实施方式中,如图2所示,步骤s110可以包括如下步骤:
81.s111、获取数据访问热度指标统计信息,数据访问热度指标统计信息包括元数据信息对应的访问指标。
82.在本实施例中,可以通过对内存中的热数据区、大数据存储节点型服务中的温数据区和高密度存储服务器中的冷数据区存储的数据进行统计分析,统计出各元数据信息对应的访问指标,得到并定期(如按日)输出数据访问热度指标统计信息。
83.具体地,如图3所示,该数据访问热度指标统计信息可以经过如下过程得到:
84.s111a、通过数据仓库工具抽取统一元数据架构中所有的表分区信息,该表分区信息包括任一数据区的各目录信息关联的元数据信息。
85.在本实施例中,任一数据区为分布式内存中的热数据区、大数据存储节点型服务
器中的温数据区或高密度存储服务器中的冷数据区。其中,热数据区可以由主机集群承载。应理解,本实施例中的数据区是指数据存储区。热数据区、温数据区和冷数据区组成数据湖。
86.在本实施例中,该数据仓库工具可以为大数据平台hadoop中的hive工具,当然,还可以是其它类型的数据仓库工具,本实施例对此不作限定。
87.示例性的,以表分区信息为order表分区信息为例,该表分区信息的一种示例可以如下:
88.[0089][0090]
在本实施例中,不同数据区会根据数据热度进行分级存储。例如,参照下述表1所示,对于按月份分区的数据为例,可以将半年之前的历史数据存储在冷数据区中,可以将半年内的数据存储到温数据区,而对于当月数据访问频度较高的数据,将其加载副本到热数据区中进行存储。
[0091]
表1
[0092]
[0093][0094]
在本实施例中,不同数据区的元数据信息通过统一元数据架构进行管理,并提供元数据访问服务。应用在访问相应数据区时,通过元数据信息即可获取准确的数据区和目录信息。其中,可以默认热数据优先级较高,当某个数据同时存在热数据区和温数据区时,该数据优先指向热数据区。
[0095]
相较于现有集中存储的数据湖而言,本技术通过统一元数据架构进行元数据信息的管理,只需区别元数据信息对应的数据区及目录信息即可,可以对应用屏蔽数据区的软硬件差异,从而可以满足不同性能、成本及数据使用场景的冷、温、热分级存储。
[0096]
s111b、分别统计各目录信息的liststatus操作记录,确定各目录信息的第二访问指标。
[0097]
在本实施例中,对于热数据区,可以读取热数据区中的任一访问日志,确定任一访问日志访问的目录信息。再根据任一访问日志访问的目录信息,统计出每个目录信息被访问的次数,将该次数作为每个目录信息的第二访问指标。
[0098]
在本实施例中,对于温数据区,可以按日读取温数据区中的元数据信息的镜像文件数据,如fsimage文件(命名空间镜像文件)数据。在以分区粒度分析数据热度的情况下,无需处理文件访问信息,此时,可以将读取到的镜像文件数据中的文件级日志信息剔除,输出文件系统目录列表。采集温数据区的各访问日志,根据文件系统目录列表对各访问日志进行清洗以及合并,生成相应的目标访问日志。再根据任一目标访问日志访问的目录信息,统计出每个目录信息被访问的次数,将该次数作为每个目录信息的第二访问指标。
[0099]
示例性的,温数据区的一种访问日志示例(hdfs_audit.log)可以如下表示:
[0100][0101]
在本实施例中,对于冷数据区,采用与温数据区相同或类似的方式,统计目录信息的第二访问指标,本实施例在此不再赘述。
[0102]
作为一种示例,可以基于当月全部日志、往月统计数据、往年统计数据,按照如下表2统计每个目录信息被访问的次数。
[0103]
表2
[0104]
[0105][0106]
在本技术中,通过对各个数据区的访问日志进行分析,可以完成数据热度分析,有助于实现根据数据访问场景变化导致的数据分级变更自动适配对应的数据区,完成数据在数据湖内的迁移。
[0107]
s111c、根据表分区信息和各目录信息的第二访问指标,得到数据访问热度指标统计信息。
[0108]
在本实施例中,根据表分区信息即可确定出每个目录信息关联的元数据信息,再将每个目录信息的第二访问指标,与每个目录信息关联的元数据信息进行对应,即可得到该数据访问热度指标统计信息。
[0109]
示例性的,结合上述order表分区信息示例、上述访问日志示例以及图4所示,在用户访问上述order表分区信息中的202306分区数据时,会先使用ls命令列出当前工作目录中的文件信息,在此情况下,hdfs_audit日志会出现对应的目录信息“/ns/ws/order/202306”的liststatus操作记录,通过统计liststatus操作记录,发现该目录信息被访问3次,即该目录信息的第二访问指标为3。根据表分区信息,确定该目录信息对应的分区是“month=202306”,该分区当日的访问指标为3,即该分区的元数据信息对应的访问指标为3。
[0110]
在本技术中,通过采用统一元数据架构,可以实现冷数据、温数据、热数据的统一访问,支持应用的无感数据访问。
[0111]
s112、获取待存储数据的第一元数据信息。
[0112]
应理解,在获取到待存储数据时,可以同步获得待存储数据的第一元数据信息。
[0113]
s113、根据第一元数据信息和数据访问热度指标统计信息,确定待存储数据对应的第一访问指标。
[0114]
在本实施例中,在获得待存储数据的第一元数据信息后,即可根据数据访问热度指标统计信息,确定出待存储数据对应的第一访问指标。
[0115]
s114、根据第一访问指标,确定待存储数据的热度标签。
[0116]
在本实施例中,可以预先设置热数据、温数据、冷数据分别对应的指标阈值。确定第一访问指标对应的指标阈值,即确定待存储数据所属的温度类型,根据该数据类型,确定待存储数据的热度标签。
[0117]
示例性的,若温数据对应的指标阈值为访问次数大于1/每季度,当确定第一访问指标为3次/每季度,则确定待存储数据所属的温度类型为热,将待存储数据的热度标签确定为热标签。
[0118]
在本技术中,根据待存储数据的第一元数据信息,确定待存储数据的第一访问指标,再根据第一访问指标确定待存储数据的热度标签,可以便于将待存储数据进行分级,存储到对应的数据区中。
[0119]
s120、当热度标签为热标签时,将待存储数据存储到内存中的热数据区中。
[0120]
在本实施例中,当热度标签为热标签时,可以通过调用分布式文件系统的内存数据仓库引擎将待存储数据存储到热数据区中。即热数据存储引擎采用内存数据仓库引擎实现。
[0121]
在本实施例中,该内存数据仓库引擎可以为presto(facebook开发的数据查询引擎),可提供sql访问接口。
[0122]
热数据区定位在数据访问加速功能上,主要承载用户频繁访问的数据,支撑用户bi分析和数据探索场景,并且无需考虑持久化存储和数据可靠性机制,用户访问数据导致数据变热时从温、冷数据区加载。热数据区数据规模小,但是对响应时间要求高,方案考虑性能优先。基于此,本技术通过调用分布式文件系统的内存数据仓库引擎将待存储数据存储到热数据区中,可以提供极速的数据访问性能,为用户交互类场景提供良好的使用体验。
[0123]
s130、当热度标签为温标签时,将待存储数据存储到大数据存储节点型服务器中的温数据区中。
[0124]
在本实施例中,当热度标签为温标签时,可以控制分布式文件系统设置n个副本,再将n个副本中的m个副本冗余,调用m个副本将待存储数据存储到温数据区中,n为大于1的整数,m为大于1小于n的整数。即温数据存储引擎由分布式文件系统中冗余的m个副本实现。例如,n可以为3,m可以为2。
[0125]
温数据区主要为大数据分析场景提供数据存储,数据量较大,由于批量处理场景对io性能有一定要求,需要平衡考虑性能和成本因素。温数据区选择基于sata架构的大数据存储节点型服务器,在硬件成本和性能两方面取得较好的平衡,多个sata硬盘的并行io能力和多副本方式的数据高可用机制,在相对较低的成本下满足大数据场景的海量存储需求和高性能并发io能力。基于此,本技术通过控制分布式文件系统设置n个副本,再将n个副本中的m个副本冗余,调用m个副本将待存储数据存储到温数据区中,可以保障数据存储的可靠性,并且还可以在减轻数据湖的存储压力的同时,解决存储成本与数据保留周期之间的矛盾。
[0126]
s140、当热度标签为冷标签时,将待存储数据存储到高密度存储服务器中的冷数据区。
[0127]
在本实施例中,当热度标签为冷标签时,可以控制分布式文件系统采用纠删码机制将待存储数据存储到冷数据区中。比如,可以控制分布式文件系统采用纠删码机制,调用分布式文件系统的0.5个副本将待存储数据存储到冷数据区中。即冷数据存储引擎由分布式文件系统中的0.5个副本实现。
[0128]
冷数据区为历史数据提供巨量的低成本存储能力,支持数据长期存储需求。由于冷数据量非常庞大并且访问频率极低,方案优先成本因素。采用高密度磁盘主机,单机可以
挂载若干块硬盘以提供较大存储空间的数据存储能力。基于此,本技术通过控制分布式文件系统采用纠删码机制,调用分布式文件系统的0.5个副本将待存储数据存储到冷数据区中,冷数据区分布在高密度存储服务器上,可以提供较强的数据存储能力,并且通过纠删码方式可以实现数据高可用,从而可以在减轻数据湖的存储压力的同时,解决存储成本与数据保留周期之间的矛盾。
[0129]
在本技术中,通过基于分布式系统提供的海量数据存储能力,不同分级数据采用不同的软硬件架构和数据冗余机制,可以实现不同成本的数据存储方案,从而可以在减轻数据湖的存储压力的同时,解决存储成本与数据保留周期之间的矛盾。
[0130]
在本技术提供的一种可适用的场景下,结合图1-5所示,本技术实施例提供的数据存储方法,还可以包括如下步骤:
[0131]
s150、对热数据区、温数据区和冷数据区中存储的数据的热度标签进行监控。
[0132]
在本实施例中,可以定期获取数据访问热度指标统计信息,将本期获取的热度访问指标统计信息与上一期获取到的数据访问热度指标统计信息进行比对,来监控热数据区、温数据区和冷数据区中存储的数据是否发生热度标签变更。
[0133]
s160、若监控到的热数据区、温数据区和冷数据区中存储的某个数据发生热度标签变更,则对该数据进行相应处理。
[0134]
在本实施例中,若监控到温数据区中存储的第一数据对应的热度标签由温标签变更为热标签,则可以将第一数据迁移到热数据区中存储。
[0135]
比如,若监控到的热数据区、温数据区和冷数据区中存储的某个数据发生热度标签变更,可以在将第一数据加载到热数据区中后,修改第一数据的元数据信息。再将第一数据的修改后的元数据信息关联的目录信息,指向热数据区中的目标存储路径上,即可完成第一数据的迁移。
[0136]
在本实施例中,若监控到温数据区中存储的第二数据对应的热度标签由温标签变更为冷标签,则可以将第二数据迁移到冷数据区中存储。
[0137]
比如,若监控到温数据区中存储的第二数据对应的热度标签由温标签变更为冷标签,可以初始化温数据区和冷数据区,以初始化迁移信息。初始化后,可以获取第二数据在温数据区中对应的第一源集群和第一源目录信息,以及需要迁移到的冷数据区中的第一目标集群和第一目标目录信息。之后,可以将第二数据从第一源集群中复制到第一目标集群中,如可以根据分布式文件系统集群复制工具将第二数据从第一源集群中复制到第一目标集群中,以及将第二数据对应的目录信息由第一源目录信息修改为第一目标目录信息,即可完成第二数据从温数据区迁移到冷数据区。
[0138]
作为一种示例,若温数据区中存储的某个数据在3个月内未被访问,则可以将该数据的热度标签由温标签变更为冷标签。
[0139]
作为一种示例,第二数据完成迁移后,可以根据空间情况判断温数据区中的第二数据是否需要清理。例如,如果源集群空间不足,完成第二数据迁移后,将温数据区中的第二数据清理。如果源集群空间足够,则不清理温数据区中的第二数据,此情况下,下次迁移到冷数据区可省略第二数据复制过程。
[0140]
在本实施例中,若监控到热数据区中存储的第三数据对应的热度标签由热标签变更为温标签或冷标签,则可以将第三数据从热数据区中清除。
[0141]
热数据区中的热数据是访问时从温数据区和冷数据区加载,且热数据不负责数据持久化,只是数据副本实现数据加速,而数据是在温数据区和冷数据区中持久化。基于此,在某个热数据冷化后,可以直接将该热数据从热数据区中清除。
[0142]
在本实施例中,若监控到冷数据区中存储的第四数据对应的热度标签由冷标签变更为温标签,则可以将第四数据迁移到温数据区中存储。
[0143]
比如,若监控到冷数据区中存储的第四数据对应的热度标签由冷标签变更为温标签,可以初始化冷数据区和温数据区。初始化后,可以获取第四数据在冷数据区中对应的第二源集群和第二源目录信息,以及需要迁移到的温数据区中的第二目标集群和第二目标目录信息。之后,可以将第四数据从第二源集群中复制到第二目标集群中,以及将第四数据对应的目录信息由第二源目录信息修改为第二目标目录信息,即可完成第四数据从冷数据区迁移到温数据区。
[0144]
可以理解为,即数据从冷数据区迁移到温数据区与从温数据区迁移到冷数据区所采用的迁移步骤是一致的,只是迁移方向相反。
[0145]
作为一种示例,若冷数据区中存储的某个数据在3个月内的每个月都被访问,则可以将该数据的热度标签由冷标签变更为温标签。
[0146]
在本技术中,通过对热数据区、温数据区和冷数据区中存储的数据的热度标签进行监控,可以实现数据的动态迁移。比如,对于热数据区中的存储的数据,在其热度标签发生变更后,将其清除释放存储空间,以缓解数据湖的存储压力。对于温数据区中存储的数据,在热度标签变更为热标签后,将其迁移到热数据区,以提升数据湖的响应效率,有助于提升用户的使用体验,或,在其热度标签变更为冷标签后,将其迁移到冷数据区,以降低存储成本。对于冷数据区中存储的数据,在其热度标签变更为温标签后,将其迁移到温数据区以提升数据湖的访问性能。
[0147]
通过以上描述可知,相较于现有技术而言,本技术通过对待存储数据进行热度分析,确定待存储数据的热度标签,热度标签为热标签、温标签或冷标签;当热度标签为热标签时,将待存储数据存储到分布式内存中的热数据区中;当热度标签为温标签时,将待存储数据存储到大数据存储节点型服务器中的温数据区中;当热度标签为冷标签时,将待存储数据存储到高密度存储服务器中的冷数据区中,从而可以根据不同热度数据采用更为合理的存储方式进行分级存储,满足了数据湖的数据访问性能提升需求,可以缓解数据湖的存储压力,同时,还可以在降低数据存储成本的基础上,满足数据长周期存储需求,解决了存储成本与数据保留周期之间的矛盾。
[0148]
图6示出根据本发明一实施例的数据存储装置的结构框图。如图6所示,该装置可以包括:
[0149]
分析单元210,用于对待存储数据进行热度分析,确定待存储数据的热度标签,热度标签为热标签、温标签或冷标签;
[0150]
存储单元220,用于当热度标签为热标签时,将待存储数据存储到分布式内存中的热数据区中;当热度标签为温标签时,将待存储数据存储到大数据存储节点型服务器中的温数据区中;当热度标签为冷标签时,将待存储数据存储到高密度存储服务器中的冷数据区中。
[0151]
在一种实施方式中,分析单元210具体用于:
[0152]
获取数据访问热度指标统计信息,数据访问热度指标统计信息包括元数据信息对应的访问指标;
[0153]
获取待存储数据的第一元数据信息;
[0154]
根据第一元数据信息和数据访问热度指标统计信息,确定待存储数据对应的第一访问指标;
[0155]
根据第一访问指标,确定待存储数据的热度标签。
[0156]
在一种实施方式中,数据访问热度指标统计信息由分析单元210经过如下过程得到:
[0157]
通过数据仓库工具抽取统一元数据架构中所有的表分区信息,表分区信息包括任一数据区的各目录信息关联的元数据信息;
[0158]
分别统计各目录信息的liststatus操作记录,确定各目录信息的第二访问指标;
[0159]
根据表分区信息和各目录信息的第二访问指标,得到数据访问热度指标统计信息。
[0160]
在一种实施方式中,存储单元220具体用于:
[0161]
当热度标签为热标签时,通过调用分布式文件系统的内存数据仓库引擎将待存储数据存储到热数据区中;
[0162]
当热度标签为温标签时,控制分布式文件系统设置n个副本,再将n个副本中的m个副本冗余,调用m个副本将待存储数据存储到温数据区中,n为大于1的整数,m为大于1小于n的整数;
[0163]
当热度标签为冷标签时,控制分布式文件系统采用纠删码机制将待存储数据存储到冷数据区中。
[0164]
在一种实施方式中,存储单元220还用于:
[0165]
对热数据区、温数据区和冷数据区中存储的数据的热度标签进行监控;
[0166]
若监控到温数据区中存储的第一数据对应的热度标签由温标签变更为热标签,则将第一数据迁移到热数据区中存储;
[0167]
若监控到温数据区中存储的第二数据对应的热度标签由温标签变更为冷标签,则将第二数据迁移到冷数据区中存储;
[0168]
若监控到热数据区中存储的第三数据对应的热度标签由热标签变更为温标签或冷标签,则将第三数据从热数据区中清除;
[0169]
若监控到冷数据区中存储的第四数据对应的热度标签由冷标签变更为温标签,则将第四数据迁移到温数据区中存储。
[0170]
在一种实施方式中,存储单元220具体用于:
[0171]
将第一数据加载到热数据区中后,修改第一数据的元数据信息;
[0172]
将第一数据的修改后的元数据信息关联的目录信息,指向热数据区中的目标存储路径上。
[0173]
在一种实施方式中,存储单元220具体用于:
[0174]
若监控到温数据区中存储的第二数据对应的热度标签由温标签变更为冷标签,则初始化温数据区和冷数据区;获取第二数据在温数据区中对应的第一源集群和第一源目录信息,以及需要迁移到的冷数据区中的第一目标集群和第一目标目录信息;将第二数据从
第一源集群中复制到第一目标集群中,以及将第二数据对应的目录信息由第一源目录信息修改为第一目标目录信息;
[0175]
若监控到冷数据区中存储的第四数据对应的热度标签由冷标签变更为温标签,则初始化冷数据区和温数据区;获取第四数据在冷数据区中对应的第二源集群和第二源目录信息,以及需要迁移到的温数据区中的第二目标集群和第二目标目录信息;将第四数据从第二源集群中复制到第二目标集群中,以及将第四数据对应的目录信息由第二源目录信息修改为第二目标目录信息。
[0176]
本技术实施例各装置中的各单元的功能可以参见上述方法中的对应描述,在此不再赘述。
[0177]
图7示出根据本发明一实施例的电子设备的结构框图。如图7所示,该电子设备包括:存储器310和处理器320,存储器310中存储指令,该指令由处理器320加载并执行,以实现上述实施例中的数据存储方法。存储器310和处理器320的数量可以为一个或多个。
[0178]
该电子设备还包括:
[0179]
通信接口330,用于与外界设备进行通信,进行数据交互传输。
[0180]
如果存储器310、处理器320和通信接口330独立实现,则存储器310、处理器320和通信接口330可以通过总线相互连接并完成相互间的通信。该总线可以是工业标准体系结构(industry standard architecture,isa)总线、外部设备互连(peripheral component interconnect,pci)总线或扩展工业标准体系结构(extended industry standard architecture,eisa)总线等。该总线可以分为地址总线、数据总线、控制总线等。为便于表示,图7中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
[0181]
可选的,在具体实现上,如果存储器310、处理器320及通信接口330集成在一块芯片上,则存储器310、处理器320及通信接口330可以通过内部接口完成相互间的通信。
[0182]
本发明实施例提供了一种计算机可读存储介质,计算机可读存储介质内存储有计算机程序,计算机程序被计算机执行时,实现本技术实施例中提供的数据存储方法。
[0183]
本技术实施例还提供了一种芯片,该芯片包括处理器,用于从存储器中调用并运行存储器中存储的指令,使得安装有芯片的通信设备执行本技术实施例提供的数据存储方法。
[0184]
本技术实施例还提供了一种芯片,包括:输入接口、输出接口、处理器和存储器,输入接口、输出接口、处理器以及存储器之间通过内部连接通路相连,处理器用于执行存储器中的代码,当代码被执行时,处理器用于执行申请实施例提供的数据存储方法。
[0185]
应理解的是,上述处理器可以是中央处理器(central processing unit,cpu),还可以是其他通用处理器、数字信号处理器(digital signal processing,dsp)、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(fieldprogrammablegate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者是任何常规的处理器等。值得说明的是,处理器可以是支持进阶精简指令集机器(advanced risc machines,arm)架构的处理器。
[0186]
进一步地,可选的,上述存储器可以包括只读存储器和随机存取存储器,还可以包括非易失性随机存取存储器。该存储器可以是易失性存储器或非易失性存储器,或可包括
易失性和非易失性存储器两者。其中,非易失性存储器可以包括只读存储器(read-only memory,rom)、可编程只读存储器(programmable rom,prom)、可擦除可编程只读存储器(erasable prom,eprom)、电可擦除可编程只读存储器(electrically eprom,eeprom)或闪存。易失性存储器可以包括随机存取存储器(random access memory,ram),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的ram可用。例如,静态随机存取存储器(static ram,sram)、动态随机存取存储器(dynamic random access memory,dram)、同步动态随机存取存储器(synchronous dram,sdram)、双倍数据速率同步动态随机存取存储器(doubledata date sdram,ddr sdram)、增强型同步动态随机存取存储器(enhanced sdram,esdram)、同步连接动态随机存取存储器(synchlink dram,sldram)和直接内存总线随机存取存储器(direct rambus ram,dr ram)。
[0187]
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生按照本技术的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输。
[0188]
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包括于本技术的至少一个实施例或示例中。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
[0189]
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或隐含地包括至少一个该特征。在本技术的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
[0190]
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分。并且本技术的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能。
[0191]
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。
[0192]
应理解的是,本技术的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。上述实施例方法的全部或部分步骤是可以通过程序来指令相关的硬件完成,该程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步
骤之一或其组合。
[0193]
此外,在本技术各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。上述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读存储介质中。该存储介质可以是只读存储器,磁盘或光盘等。
[0194]
以上所述,仅为本技术的具体实施方式,但本技术的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到其各种变化或替换,这些都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应以权利要求的保护范围为准。

技术特征:
1.一种数据存储方法,其特征在于,包括:对待存储数据进行热度分析,确定所述待存储数据的热度标签,所述热度标签为热标签、温标签或冷标签;当所述热度标签为热标签时,将所述待存储数据存储到分布式内存中的热数据区中;当所述热度标签为温标签时,将所述待存储数据存储到大数据存储节点型服务器中的温数据区中;当所述热度标签为冷标签时,将所述待存储数据存储到高密度存储服务器中的冷数据区中。2.根据权利要求1所述的方法,其特征在于,对待存储数据进行热度分析,确定所述待存储数据的热度标签包括:获取数据访问热度指标统计信息,所述数据访问热度指标统计信息包括元数据信息对应的访问指标;获取所述待存储数据的第一元数据信息;根据所述第一元数据信息和所述数据访问热度指标统计信息,确定所述待存储数据对应的第一访问指标;根据所述第一访问指标,确定所述待存储数据的热度标签。3.根据权利要求2所述的方法,其特征在于,所述数据访问热度指标统计信息经过如下过程得到:通过数据仓库工具抽取统一元数据架构中所有的表分区信息,所述表分区信息包括任一数据区的各目录信息关联的元数据信息;分别统计各所述目录信息的liststatus操作记录,确定各所述目录信息的第二访问指标;根据所述表分区信息和各所述目录信息的第二访问指标,得到所述数据访问热度指标统计信息。4.根据权利要求1所述的方法,其特征在于,当所述热度标签为热标签时,将所述待存储数据存储到分布式内存中的热数据区中包括:当所述热度标签为热标签时,通过调用分布式文件系统的内存数据仓库引擎将所述待存储数据存储到所述热数据区中;当所述热度标签为温标签时,将所述待存储数据存储到大数据存储节点型服务器中的温数据区中包括:当所述热度标签为温标签时,控制所述分布式文件系统设置n个副本,再将所述n个副本中的m个副本冗余,调用所述m个副本将所述待存储数据存储到所述温数据区中,n为大于1的整数,m为大于1小于n的整数;当所述热度标签为冷标签时,将所述待存储数据存储到高密度存储服务器中的冷数据区中包括:当所述热度标签为冷标签时,控制所述分布式文件系统采用纠删码机制将所述待存储数据存储到所述冷数据区中。5.根据权利要求1-4任一项所述的方法,其特征在于,所述方法还包括:对所述热数据区、所述温数据区和所述冷数据区中存储的数据的热度标签进行监控;若监控到温数据区中存储的第一数据对应的热度标签由温标签变更为热标签,则将所述第一数据迁移到所述热数据区中存储;若监控到所述温数据区中存储的第二数据对应的热度标签由温标签变更为冷标签,则
将所述第二数据迁移到所述冷数据区中存储;若监控到所述热数据区中存储的第三数据对应的热度标签由热标签变更为温标签或冷标签,则将所述第三数据从所述热数据区中清除;若监控到冷数据区中存储的第四数据对应的热度标签由冷标签变更为温标签,则将所述第四数据迁移到所述温数据区中存储。6.根据权利要求5所述的方法,其特征在于,将所述第一数据迁移到所述热数据区中存储包括:将所述第一数据加载到所述热数据区中后,修改所述第一数据的元数据信息;将所述第一数据的修改后的元数据信息关联的目录信息,指向所述热数据区中的目标存储路径上。7.根据权利要求5所述的方法,其特征在于,将所述第二数据迁移到所述冷数据区中存储包括:初始化所述温数据区和所述冷数据区;获取所述第二数据在所述温数据区中对应的第一源集群和第一源目录信息,以及需要迁移到的所述冷数据区中的第一目标集群和第一目标目录信息;将所述第二数据从所述第一源集群中复制到所述第一目标集群中,以及将所述第二数据对应的目录信息由所述第一源目录信息修改为所述第一目标目录信息;将所述第四数据迁移到所述温数据区中存储包括:初始化所述冷数据区和所述温数据区;获取所述第四数据在所述冷数据区中对应的第二源集群和第二源目录信息,以及需要迁移到的所述温数据区中的第二目标集群和第二目标目录信息;将所述第四数据从所述第二源集群中复制到所述第二目标集群中,以及将所述第四数据对应的目录信息由所述第二源目录信息修改为所述第二目标目录信息。8.一种数据存储装置,其特征在于,包括:分析单元,用于对待存储数据进行热度分析,确定所述待存储数据的热度标签,所述热度标签为热标签、温标签或冷标签;存储单元,用于当所述热度标签为热标签时,将所述待存储数据存储到分布式内存中的热数据区中;当所述热度标签为温标签时,将所述待存储数据存储到大数据存储节点型服务器中的温数据区中;当所述热度标签为冷标签时,将所述待存储数据存储到高密度存储服务器中的冷数据区中。9.一种电子设备,其特征在于,包括:存储器和处理器,所述存储器中存储指令,所述指令由处理器加载并执行,以实现如权利要求1-7任一项所述的方法。10.一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被计算机执行时,实现如权利要求1-7中任一项所述的方法。

技术总结
本申请提出了一种数据存储方法、装置、设备及存储介质,该方法包括:对待存储数据进行热度分析,确定待存储数据的热度标签;当热度标签为热标签时,将待存储数据存储到分布式内存中的热数据区中;当热度标签为温标签时,将待存储数据存储到大数据存储节点型服务器中的温数据区中;当热度标签为冷标签时,将待存储数据存储到高密度存储服务器中的冷数据区中,从而可以根据不同热度数据采用更为合理的存储方式进行分级存储,满足了数据湖的数据访问性能提升需求,可以缓解数据湖的存储压力,同时,还可以在降低数据存储成本的基础上,满足数据长周期存储需求,解决了存储成本与数据保留周期之间的矛盾。保留周期之间的矛盾。保留周期之间的矛盾。


技术研发人员:张伟 芦康磊 赵国晖 廖小文
受保护的技术使用者:广东亿迅科技有限公司
技术研发日:2023.07.31
技术公布日:2023/10/11
版权声明

本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

飞行汽车 https://www.autovtol.com/

分享:

扫一扫在手机阅读、分享本文

相关推荐