数据处理方法、系统、电子设备及可读存储介质技术方案

技术编号:36073742 阅读:6 留言:0更新日期:2022-12-24 10:44
本申请公开了一种数据处理方法、系统、电子设备及计算机可读存储介质。其中,后端服务子系统中配置的虚拟查询表与离线、实时数据子系统中的数据存在映射关系,该方法包括:接收针对虚拟查询表的数据查询指令,该查询指令携带有待查询数据的指定时间字段的字段值筛选区间;将字段值筛选区间拆分为第一、第二时间子区间;从离线、实时数据子系统中,分别读取指定时间字段的字段值满足第一、第二时间子区间的数据;根据读取的数据输出数据查询结果。使用本申请提供的数据处理方法,用户在开发数据任务时,仅需针对一套基于虚拟查询表的代码进行开发维护即可,实现了用户对分离计算无感知的流批一体,且能够保证较佳的处理性能和吞吐量。量。量。

【技术实现步骤摘要】
数据处理方法、系统、电子设备及可读存储介质


[0001]本申请涉及计算机
,具体涉及一种数据处理方法、系统、电子设备及计算机可读存储介质。

技术介绍

[0002]随着计算机技术的飞速发展,庞大的数据量给数据的分析、处理带来了巨大挑战。目前,对大量数据主要存在批处理(也称批计算、离线计算)和流处理(也称流计算、实时计算)这两种处理需求,在相关技术中,数据处理链路的架构大多采用伪流批一体式架构,在该架构中,批计算任务和流计算任务需要分两条链路进行单独处理,如此,使得开发人员在开发数据相关需求时,需要分别维护批处理和流处理这两套代码,因此,降低了数据需求的开发效率。

技术实现思路

[0003]本申请提供了一种数据处理方法、系统、电子设备及计算机可读存储介质,能够在开发数据相关需求时,使批处理和流处理仅通过一套代码即可维护,从而提高数据需求的开发效率。具体方式如下。
[0004]第一方面,本申请提供了一种数据处理方法,应用于数据处理系统中的后端服务子系统,所述系统还包括离线数据子系统和实时数据子系统,所述后端服务子系统、所述离线数据子系统与所述实时数据子系统两两之间相互通信连接,所述后端服务子系统中配置有至少一个虚拟查询表,所述至少一个虚拟查询表与所述离线数据子系统及所述实时数据子系统中存储的数据存在映射关系,所述方法包括:
[0005]接收针对所述虚拟查询表的数据查询指令,其中,所述数据查询指令至少携带有待查询数据的指定时间字段的字段值筛选区间;
[0006]响应于所述数据查询指令,将所述字段值筛选区间拆分为预设时刻之前的第一时间子区间,以及所述预设时刻以后的第二时间子区间;
[0007]从所述离线数据子系统中读取所述指定时间字段的字段值满足所述第一时间子区间的第一数据,以及从所述实时数据子系统中读取所述指定时间字段的字段值满足所述第二时间子区间的第二数据;
[0008]根据所述第一数据和所述第二数据,输出数据查询结果。
[0009]第二方面,本申请实施例还提供了一种数据处理系统,所述系统包括两两之间相互通信连接的后端服务子系统、离线数据子系统和实时数据子系统,所述后端服务子系统中配置有至少一个虚拟查询表,所述至少一个虚拟查询表与所述离线数据子系统及所述实时数据子系统中存储的数据存在映射关系;
[0010]所述离线数据子系统,用于存储指定时间字段的字段值在预设时刻之前的数据;
[0011]所述实时数据子系统,用于存储所述指定时间字段的字段值在所述预设时刻以后的数据;
[0012]所述后端服务子系统,用于接收针对所述虚拟查询表的数据查询指令,其中,所述数据查询指令至少携带有待查询数据的指定时间字段的字段值筛选区间;响应于所述数据查询指令,将所述字段值筛选区间拆分为预设时刻之前的第一时间子区间,以及所述预设时刻以后的第二时间子区间;从所述离线数据子系统中读取所述指定时间字段的字段值满足所述第一时间子区间的第一数据,以及从所述实时数据子系统中读取所述指定时间字段的字段值满足所述第二时间子区间的第二数据;根据所述第一数据和所述第二数据,输出数据查询结果。
[0013]第三方面,本申请实施例还提供了一种电子设备,包括:
[0014]处理器;以及
[0015]存储器,用于存储数据处理程序,该电子设备通电并通过所述处理器运行该程序后,执行如第一方面任一项所述的方法。
[0016]第四方面,本申请实施例还提供了一种计算机可读存储介质,存储有数据处理程序,该程序被处理器运行,执行如第一方面任一项所述的方法。
[0017]与现有技术相比,本申请具有以下优点:
[0018]在本申请实施例提供的数据处理方法中,后端服务子系统接收到用户针对虚拟查询表的数据查询指令后,以预设时刻为划分节点,对数据查询指令中携带的时间筛选条件进行分区,从而拆分为预设时刻之前的第一时间子区间,以及预设时刻以后的第二时间子区间,进而从离线数据子系统中读取指定时间字段的字段值满足第一时间子区间的离线数据,以及从实时数据子系统中读取指定时间字段的字段值满足第二时间子区间的实时数据,并根据读取的数据输出查询结果。
[0019]由于后端服务子系统中配置的虚拟查询表,与离线数据子系统及实时数据子系统中存储的数据存在映射关系,因此,在用户层面,用户可以仅对虚拟查询表进行数据查询操作,形成查询指令,便可使数据处理系统在底层实现层面,通过数据筛选条件的时间拆分,将用户需求转化为离线部分和实时部分的双数据源操作,因此,在本申请实施例中,用户在开发数据任务时,仅需针对一套基于虚拟查询表的代码进行开发和维护即可,提高了数据需求的开发效率,并实现了用户对分离计算无感知的流批一体,且能够保证较佳的处理性能和吞吐量。
附图说明
[0020]图1是本申请实施例提供的一种数据处理系统的架构框图;
[0021]图2是本申请实施例提供的一种数据处理方法的流程图;
[0022]图3是本申请实施例提供的另一种数据处理系统的架构框图;
[0023]图4是本申请实施例提供的另一种数据处理方法的流程图;
[0024]图5是本申请实施例提供的第三种数据处理方法的流程图;
[0025]图6是本申请实施例提供的第四种数据处理方法的流程图;
[0026]图7是本申请实施例提供的用于实现数据处理的电子设备的逻辑结构示意图。
具体实施方式
[0027]在下面的描述中阐述了很多具体细节以便于充分理解本申请。但是本申请能够以
很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本申请内涵的情况下做类似推广,因此本申请不受下面公开的具体实施的限制。
[0028]在详细说明本申请的实施方式之前,首先对相关技术进行进一步介绍。
[0029]随着流批一体概念的热门化,除
技术介绍
中提及的伪流批一体式架构之外,还出现了一些想要兼顾批处理和流处理的方案,如下:
[0030]方案A:Kappa架构。在Kappa架构中,流批一体的实现主要是流处理和批处理,均采用流处理的计算方式。
[0031]方案B:数据湖存储技术。在如Hudi、Iceberg、Deltalake等数据湖平台中,可以通过某种数据存储格式去存储数据,这些格式提供时间线(Timeline)功能,支持按时间顺序回溯或者流读。
[0032]然而,上述方案虽然可以通过一套代码进行维护,但是仍然存在不足之处。
[0033]对于方案A,Kappa架构的存储设计主要是为流处理而设计,存储方式对于批处理、随机查询等性能存在瓶颈。
[0034]对于方案B,数据湖存储技术虽然能够提供时间线功能,但实时读取粒度、吞吐量等性能都存在局限性。
[0035]上述方案A和方案B,虽然能够通过一套代码进行维护,但是却在一定程度上牺牲了批处理或流处理的性能。因此,不论是
技术介绍
中的伪流批一体式方案,还是上述方案A和方案B,都无法在通过一套代码即本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据处理方法,其特征在于,应用于数据处理系统中的后端服务子系统,所述系统还包括离线数据子系统和实时数据子系统,所述后端服务子系统、所述离线数据子系统与所述实时数据子系统两两之间相互通信连接,所述后端服务子系统中配置有至少一个虚拟查询表,所述至少一个虚拟查询表与所述离线数据子系统及所述实时数据子系统中存储的数据存在映射关系,所述方法包括:接收针对所述虚拟查询表的数据查询指令,其中,所述数据查询指令至少携带有待查询数据的指定时间字段的字段值筛选区间;响应于所述数据查询指令,将所述字段值筛选区间拆分为预设时刻之前的第一时间子区间,以及所述预设时刻以后的第二时间子区间;从所述离线数据子系统中读取所述指定时间字段的字段值满足所述第一时间子区间的第一数据,以及从所述实时数据子系统中读取所述指定时间字段的字段值满足所述第二时间子区间的第二数据;根据所述第一数据和所述第二数据,输出数据查询结果。2.根据权利要求1所述的方法,其特征在于,所述离线数据子系统中配置有至少一个离线数据查询表,所述至少一个离线数据查询表与所述离线数据子系统中存储的数据存在映射关系;所述实时数据子系统中配置有至少一个实时数据查询表,所述至少一个实时数据查询表与所述实时数据子系统中存储的数据存在映射关系;所述虚拟查询表与具有相同表名的所述离线数据查询表及所述实时数据查询表存在映射关系。3.根据权利要求2所述的方法,其特征在于,所述数据查询指令还携带有待查询的虚拟查询表的表名,所述从所述离线数据子系统中读取所述指定时间字段的字段值满足所述第一时间子区间的第一数据,包括:从与所述虚拟查询表具有相同表名的离线数据查询表中,查询所述指定时间字段的字段值满足所述第一时间子区间的第一数据的存储信息;根据所述第一数据的存储信息,从所述离线数据子系统中读取所述第一数据。4.根据权利要求2所述的方法,其特征在于,所述数据查询指令还携带有待查询的虚拟查询表的表名,所述从所述实时数据子系统中读取所述指定时间字段的字段值满足所述第二时间子区间的第二数据,包括:从与所述虚拟查询表具有相同表名的实时数据查询表中,查询所述指定时间字段的字段值满足所述第二时间子区间的第二数据的存储信息;根据所述第二数据的存储信息,从所述实时数据子系统中读取所述第二数据。5.根据权利要求2所述的方法,其特征在于,所述接收针对所述虚拟查询表的数据查询指令之前,还包括:接收虚拟查询表创建指令,其中,所述虚拟查询表创建指令至少携带有待创建的虚拟查询表的表名;响应于所述虚拟查询表创建指令,以所述表名创建虚拟查询表,并在所述离线数据子系统中以所述表名创建离线数据查询表,以及在所述实时数据子系统中以所述表名创建实时数据查询表。
6.根据权利要求5所述的方法,其特征在于,所述响应于所述虚拟查询表创建指令,以所述表名创建虚拟查询表,并在所述离线数据子系统中以所述表名创建离线数据查询表,以及在所述实时数据子系统中以所述表名创建实时数据查询表之后,还包括:接收针对所述虚拟查询表的数据写入指令,其中,所述数据写入指令至少携带有所述虚拟查询表的表名和待写入的目标数据的所述指定时间字段的字段值;响应于所述数据写入指令,在所述字段值处于所述预设时刻之前的情况下,将所述目标数据存储至所述离线数据子系统中,并将所述目标数据的存储信息写入具有所述表名的离线数据查询表中;响应于所述数据写入指令,在所述字段值处于所述预设时刻以后的情况下,将所述目标数据存储至所述实时数据子系统中,并将所述目标数据的存储信息写入具有所述表名的实时数据查询表中;将所述目标数据的存储信息同步至具有所述表名的所述虚拟查询表中,以更新所述虚拟查询表的元数据。7.根据权利要求5所述的方法,其特征在于,所述响应于所述虚拟查询表创建指令,以所述表名创建虚拟查询表,并在所述离线数据子系统中以所述表名创建离线数据查询表,以及在所述实时数据子系统中以所述表名创建实时数据查询表之后,还包括:接收目标虚拟查询表的删除指令,其中,所述删除指令至少携带有所述目标虚拟查询表的表名;响应于所述删除指令,删除所述目标...

【专利技术属性】
技术研发人员:於圣楠张宇昂肖文浩阮良吴剑飞刘柏
申请(专利权)人:网易杭州网络有限公司
类型:发明
国别省市:

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

1