一种流批一体的大数据存储方法、系统、电子设备及存储介质技术方案

技术编号:39399111 阅读:10 留言:0更新日期:2023-11-19 15:52
本发明专利技术提供一种流批一体的大数据存储方法、系统、电子设备及存储介质,系统包括内存表、数据文件存储模块和操作记录存储模块。本发明专利技术通过内存表对流式数据进行缓存,并在数据写入文件存储模块前进行键过滤,从而对流式数据进行去重,同时文件存储模块以LSM Tree结构进行存储,实现流式数据的增加、更新、删除,支持数据的全量批次读取,同时基于操作记录存储模块对文件存储模块中表的操作记录进行存储,更便于与上述文件存储模块结合实现流式数据的变更数据读取,从而实现了流批一体的存储,从根本上解决了流批一体的兼容性问题,完善了实时流式数据和离线批量数据一体的动态表存储。储。储。

【技术实现步骤摘要】
一种流批一体的大数据存储方法、系统、电子设备及存储介质


[0001]本专利技术涉及大数据处理
,更具体地,涉及一种流批一体的大数据存储方法、系统、电子设备及存储介质。

技术介绍

[0002]动态表是大数据实时数据处理框架(以Apache Flink为代表)的表API和SQL处理流数据的核心概念,与离线数仓中间层的静态表(以Apache Hive为代表)作用类似,动态表是实时数据仓库的中间层。动态表中数据是随时间持续变化永不停止的,而静态表仅能包含离线批量处理的数据。可以将实时计算看成对动态表上变更数据的处理,将离线或批量计算看成对动态表某个时间快照的处理。对动态表的查询将生成一个持续查询,这个查询不断更新下游的结果表,以反映输入动态表上的更改,这构成了实时数仓的基本处理思路。本质上,动态表上的连续查询非常类似于定义物化视图的查询。
[0003]作为存算分离的架构在传统意义上一直被认为是大数据架构演进的推荐的设计方式。然而现有的存储方式都是针对离线数据的静态表处理推动发展而来,对于实时数仓的动态表数据所对应的增删查改需求,显然是不能够满足要求的。因此,如何进一步完善实时流式数据和离线批量数据一体的动态表存储是亟待解决的问题。

技术实现思路

[0004]本专利技术针对现有技术中存在的技术问题,提供一种流批一体的大数据存储方法、系统、电子设备及存储介质,用以解决如何进一步完善实时流式数据和离线批量数据一体的动态表存储的问题。
[0005]本专利技术的第一方面,提供了一种流批一体的大数据存储系统,包括:内存表、数据文件存储模块和操作记录存储模块;
[0006]所述内存表,用于对输入的流式数据以键值对的方式进行缓存,并对所述流式数据进行键过滤,将过滤后的流式数据写入所述文件存储模块;
[0007]所述数据文件存储模块,用于以数据文件存储形式,基于LSM Tree数据结构,对所述过滤后的流式数据进行CURD操作;
[0008]所述操作记录存储模块,用于以不可变更序列存储所述数据文件存储模块中表的操作记录。
[0009]在上述技术方案的基础上,本专利技术还可以作出如下改进。
[0010]优选的,所述数据文件存储模块包括数据存储目录,所述数据存储目录包括:至少一个区目录,每个区目录中至少包括一个块目录;
[0011]所述块目录,用于基于LSM Tree数据结构,对所述过滤后的流式数据进行CURD操作。
[0012]优选的,所述数据文件存储模块还包括元数据存储目录,所述元数据存储目录包括:schema目录、meta目录和version目录;
[0013]所述schema目录,用于存储所述过滤后的流式数据写入所述数据文件存储模块时触发提交的表结构变更的记录文件,包括表结构的增加、删除和修改记录以及表索引结构的变更记录;
[0014]所述meta目录,用于存储所述过滤后的流式数据写入所述数据文件存储模块时触发提交的数据文件变更meta

list列表;
[0015]所述version目录,用于存储所述过滤后的流式数据写入所述数据文件存储模块时触发提交的版本快照文件,所述版本快照文件包括所述schema目录中的表结构文件和所述meta目录中的变更meta

list列表。
[0016]优选的,所述操作记录存储模块包括至少一个分区目录,每个分区目录中包括至少一个消息文件;
[0017]所述消息文件,用于以不可变更序列存储所述数据文件存储模块中表的操作记录。
[0018]本专利技术的第二方面,提供一种流批一体的大数据存储方法,应用于流批一体的大数据存储系统,所述流批一体的大数据存储系统包括内存表、数据文件存储模块和操作记录存储模块,所述方法包括:
[0019]在所述内存表满足预设刷盘条件时,对所述内存表中的流式数据按键值和序列号进行排序合并,并将排序后的流式数据写入所述数据文件存储模块中,所述流式数据包括键、值和序列号;
[0020]所述数据文件存储模块基于所述排序后的流式数据生成数据文件变更第一meta

list列表,并将本次写入记录存储至所述第一meta

list列表中;
[0021]所述数据文件存储模块基于所述排序后的流式数据生成第一version快照文件,并将所述第一version快照文件与所述本次写入记录进行关联,完成数据存储。
[0022]优选的,在所述排序后的流式数据写入所述数据存储模块并对所述数据存储模块中表结构更新时,所述数据存储模块生成所述排序后的流式数据对应的表结构文件,并将所述表结构文件存储至所述数据存储模块的schema目录中,并将所述第一version快照文件与所述表结构文件关联。
[0023]优选的,所述本次写入记录包括删除文件和新增文件。
[0024]优选的,所述方法还包括:
[0025]基于输入的数据读取指令,读取所述数据读取指令对应的第二version快照文件;
[0026]基于所述第二version快照文件获取所述第二meta

list列表,并生成文件清单;
[0027]将所述数据文件存储模块中所述文件清单对应的文件构建成LSM Tree;
[0028]基于所述LSM Tree将所述文件清单对应的数据返回至指令输入方。
[0029]本专利技术的第三方面,提供了一种电子设备,包括存储器、处理器,所述处理器用于执行存储器中存储的计算机管理类程序时实现上述第二方面中任一流批一体的大数据存储方法的步骤。
[0030]本专利技术的第四方面,提供了一种计算机可读存储介质,其上存储有计算机管理类程序,所述计算机管理类程序被处理器执行时实现上述第二方面中任一流批一体的大数据存储方法的步骤。
[0031]本专利技术提供的一种流批一体的大数据存储方法、系统、电子设备及存储介质,系统
包括内存表、数据文件存储模块和操作记录存储模块;所述内存表,用于对输入的流式数据以键值对的方式进行缓存,并对所述流式数据进行键过滤,将过滤后的流式数据写入所述文件存储模块;所述数据文件存储模块,用于以数据文件存储形式,基于LSM Tree数据结构,对所述过滤后的流式数据进行CURD操作;所述操作记录存储模块,用于以不可变更序列存储所述数据文件存储模块中表的操作记录。本专利技术通过内存表对流式数据进行缓存,并在数据写入文件存储模块前进行键过滤,从而对流式数据进行去重,同时文件存储模块以LSM Tree结构进行存储,实现流式数据的增加、更新、删除,支持数据的全量批次读取,同时基于操作记录存储模块对文件存储模块中表的操作记录进行存储,更便于与上述文件存储模块结合实现流式数据的变更数据读取,从而实现了流批一体的存储,从根本上解决了流批一体的兼容性问题,完善了实时流式数据和离线批量数据一体的动态表存储。
附图说明
[0032]图1为本专利技术提供的一种流批一体的大数据存本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种流批一体的大数据存储系统,其特征在于,包括内存表、数据文件存储模块和操作记录存储模块;所述内存表,用于对输入的流式数据以键值对的方式进行缓存,并对所述流式数据进行键过滤,将过滤后的流式数据写入所述文件存储模块;所述数据文件存储模块,用于以数据文件存储形式,基于LSM Tree数据结构,对所述过滤后的流式数据进行CURD操作;所述操作记录存储模块,用于以不可变更序列存储所述数据文件存储模块中表的操作记录。2.根据权利要求1所述的流批一体的大数据存储系统,其特征在于,所述数据文件存储模块包括数据存储目录,所述数据存储目录包括:至少一个区目录,每个区目录中至少包括一个块目录;所述块目录,用于基于LSM Tree数据结构,对所述过滤后的流式数据进行CURD操作。3.根据权利要求2所述的流批一体的大数据存储系统,其特征在于,所述数据文件存储模块还包括元数据存储目录,所述元数据存储目录包括:schema目录、meta目录和version目录;所述schema目录,用于存储所述过滤后的流式数据写入所述数据文件存储模块时触发提交的表结构变更的记录文件,包括表结构的增加、删除和修改记录以及表索引结构的变更记录;所述meta目录,用于存储所述过滤后的流式数据写入所述数据文件存储模块时触发提交的数据文件变更meta

list列表;所述version目录,用于存储所述过滤后的流式数据写入所述数据文件存储模块时触发提交的版本快照文件,所述版本快照文件包括所述schema目录中的表结构文件和所述meta目录中的变更meta

list列表。4.根据权利要求1所述的流批一体的大数据存储系统,其特征在于,所述操作记录存储模块包括至少一个分区目录,每个分区目录中包括至少一个消息文件;所述消息文件,用于以不可变更序列存储所述数据文件存储模块中表的操作记录。5.一种流批一体的大数据存储方法,其特征在于,应用于流批一体的大数据存储系统,所述流批一体的大数据存储系统包括内存表、数据文件存储模块和操作记录存储模块,所述...

【专利技术属性】
技术研发人员:王军德李诒雯周明周亮
申请(专利权)人:武汉光庭信息技术股份有限公司
类型:发明
国别省市:

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

1