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

技术编号:30271861 阅读:14 留言:0更新日期:2021-10-09 21:28
本申请实施例提供了一种数据处理方法、设备、存储介质及系统。方法包括:获取待存储数据,待存储数据用于持久化存储至数据库;基于待存储数据生成至少一个数据文件,每个数据文件包括至少一个文件块,每个文件块中包括多个行组文件,且数据文件为支持数据追加写和行列混存的存储格式;确定数据文件在不同文件粒度上的统计信息,文件粒度包括:与数据文件相对应的第一粒度、与文件块相对应的第二粒度、与行组文件相对应的第三粒度;将待存储数据和统计信息存储至数据库。本申请提供的技术方案,通过行列混存方式对数据进行存储,有效地避免文件数量爆炸的情况,另外,结合不同粒度的统计信息进行数据存储,有利于提高数据处理性能,降低延迟信息。降低延迟信息。降低延迟信息。

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


[0001]本申请涉及数据处理
,尤其涉及一种数据处理方法、设备、存储介质及系统。

技术介绍

[0002]PAX(Partition Attributes Across)是一种数据存储格式,其特点是行列混存,按页管理。现有的PAX格式(如 Apache ORC)是为通用的追加写入(append

only)存储介质(如HDFS)打造的,其中,append

only存储介质是一种不支持对写入数据进行修改的存储介质,但是,由于其自身不包含缓存组件,因此,在进行数据读写操作时,会有较高延迟。

技术实现思路

[0003]本申请实施例提供一种数据处理方法、设备、存储介质及系统,能够以行列混存方式对数据进行存储,有效地避免文件数量爆炸的情况,另外,结合不同粒度的统计信息进行数据存储,有利于提高数据处理性能,降低延迟信息。
[0004]第一方面,本申请实施例提供了一种数据处理方法,包括:获取待存储数据,所述待存储数据用于持久化存储至数据库;基于所述待存储数据生成至少一个数据文件,其中,每个数据文件包括至少一个文件块,每个文件块中包括多个行组文件,且所述数据文件为支持数据追加写和行列混存的存储格式;确定所述数据文件在不同文件粒度上的统计信息,所述文件粒度包括:与数据文件相对应的第一粒度、与文件块相对应的第二粒度、与行组文件相对应的第三粒度;将所述待存储数据和所述统计信息存储至数据库。
[0005]第二方面,本申请实施例提供了一种数据处理装置,包括:获取模块,用于获取待存储数据,所述待存储数据用于持久化存储至数据库;生成模块,用于基于所述待存储数据生成至少一个数据文件,其中,每个数据文件包括至少一个文件块,每个文件块中包括多个行组文件,且所述数据文件为支持数据追加写和行列混存的存储格式;确定模块,用于确定所述数据文件在不同文件粒度上的统计信息,所述文件粒度包括:与数据文件相对应的第一粒度、与文件块相对应的第二粒度、与行组文件相对应的第三粒度;处理模块,用于将所述待存储数据和所述统计信息存储至数据库。
[0006]第三方面,本申请实施例提供了一种电子设备,包括:存储器、处理器;其中,所述存储器用于存储一条或多条计算机指令,其中,所述一条或多条计算机指令被所述处理器执行时实现上述第一方面所示的数据处理方法。
[0007]第四方面,本专利技术实施例提供了一种计算机存储介质,用于储存计算机程序,所述计算机程序使计算机执行时实现上述第一方面所示的数据处理方法。
[0008]第五方面,本专利技术实施例提供了一种计算机程序产品,包括:存储有计算机指令的计算机可读存储介质,当所述计算机指令被一个或多个处理器执行时,致使所述一个或多个处理器执行权上述第一方面所示的数据处理方法中的步骤。
[0009]第六方面,本专利技术实施例提供了一种数据处理系统,包括:请求端,用于将待存储数据发送至数据处理装置,其中,所述待存储数据用于持久化存储至数据库;数据处理装置,用于获取所述待存储数据,并基于所述待存储数据生成至少一个数据文件,其中,每个数据文件包括至少一个文件块,每个文件块中包括多个行组文件,且所述数据文件为支持数据追加写和行列混存的存储格式; 确定所述数据文件在不同文件粒度上的统计信息,所述文件粒度包括:与数据文件相对应的第一粒度、与文件块相对应的第二粒度、与行组文件相对应的第三粒度;将所述待存储数据和所述统计信息存储至数据库。
[0010]本申请实施例提供的技术方案,通过获取与数据库相对应的待存储数据,基于所述待存储数据生成至少一个数据文件,其中,每个数据文件包括至少一个文件块,每个文件块中包括多个行组文件,且所述数据文件为支持数据追加写和行列混存的存储格式;而后确定所述数据文件在不同文件粒度上的统计信息,并将所述待存储数据和所述统计信息存储至数据库,有效地实现了使用行列混存的方式对数据进行存储,进而可以避免文件数量爆炸的情况,另外,结合不同文件粒度上的统计信息将数据存储在数据库中,这样在进行数据扫描时,可以基于统计信息过滤掉大部分未命中扫描要求的数据,进而有利于提高数据处理性能,降低延迟信息,进一步保证了该方法的实用性。
附图说明
[0011]为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0012]图1为本申请实施例提供的一种数据处理方法的场景示意图;图2为本申请实施例提供的一种数据处理方法的流程示意图;图3为本申请实施例提供的数据文件的结构示意图;图4为本申请实施例提供的基于所述待存储数据生成至少一个数据文件的流程示意图;图5为本申请实施例提供的另一种数据处理方法的流程示意图;图6为本申请实施例提供的又一种数据处理方法的流程示意图;图7为本申请实施例提供的再一种数据处理方法的流程示意图;图8为本申请实施例提供的又一种数据处理方法的流程示意图;图9为本申请实施例提供的一种基于缓冲区进行数据处理操作的流程示意图;图10为本申请实施例提供的另一种基于缓冲区进行数据处理操作的流程示意图;图11为本申请实施例提供的又一种数据处理方法的流程示意图;图12为本申请应用实施例提供的数据预取操作的交互示意图;
图13为本申请实施例提供的一种数据处理装置的结构示意图;图14为图13所示的数据处理装置所对应的电子设备的结构示意图。
具体实施方式
[0013]为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0014]在本申请实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义,“多种”一般包含至少两种,但是不排除包含至少一种的情况。
[0015]应当理解,本文中使用的术语“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
[0016]取决于语境,如在此所使用的词语“如果”、“若”可以被解释成为“在
……
时”或“当
……
时”或“响应于确定”或“响应于检测”。类似地,取决于语境,短语“如果确定”或“如果检测(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当检测(陈述的条件或事件)时”或“响应本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据处理方法,包括:获取待存储数据,所述待存储数据用于持久化存储至数据库;基于所述待存储数据生成至少一个数据文件,其中,每个数据文件包括至少一个文件块,每个文件块中包括多个行组文件,且所述数据文件为支持数据追加写和行列混存的存储格式;确定所述数据文件在不同文件粒度上的统计信息,所述文件粒度包括:与数据文件相对应的第一粒度、与文件块相对应的第二粒度、与行组文件相对应的第三粒度;将所述待存储数据和所述统计信息存储至数据库。2.根据权利要求1所述的方法,在基于所述待存储数据生成至少一个数据文件之前,所述方法还包括:获取所述待存储数据中需要进行排序的至少一个排序列;基于所述至少一个排序列对所述待存储数据进行行排序,获得排序后数据。3.根据权利要求1所述的方法,在基于所述待存储数据生成至少一个数据文件之前,所述方法还包括:获取用于对所述待存储数据进行列排序的设定规则;基于所述设定规则对所述待存储数据进行列排序,获得排序后数据。4.根据权利要求1所述的方法,所述方法还包括:获取数据处理请求;基于所述数据处理请求生成一缓冲区,所述缓冲区用于存储与所述数据处理请求相对应的数据;基于所述缓冲区进行数据处理操作,获得与所述数据处理请求相对应的数据处理结果。5.根据权利要求4所述的方法,基于所述缓冲区进行数据处理操作,获得与所述数据处理请求相对应的数据处理结果,包括:在所述数据处理请求包括数据读取请求时,通过缓冲区获取与所述数据读取请求相对应的预取数据,并确定用于预取至所述缓冲区的位于所述预取数据之后的下一批数据;将所述下一批数据预取至缓冲区,以作为预取数据;基于所述缓冲区获得的所有数据,确定与所述数据读取请求相对应的数据读取结果。6.根据权利要求5所述的方法,在通过缓冲区获取与所述数据读取请求相对应的预取数据之前,所述方法还包括:基于所述数据库中每个数据文件所对应的统计信息和所述数据读取请求对所述数据库中的所有数据文件进行筛选,获得筛选后文件;在所述筛选后文件中,确定用于预取至所述缓冲区的预取数据。7.根据权利要求6所述的方法,基于所述数据库中每个数据文件所对应的统计信息和所述数据读取请求对所述数据库中的所有数据文件进行筛选,获得筛选后文件,包括:基于所述数据读取请求确定读取数据类型和读取数据大小;基于每个数据文件所对应的统计信息、读取数据类型和读取数据大小对所述数据库中的所有数据文件进...

【专利技术属性】
技术研发人员:侯文彬李飞飞陆元飞邢玉辉苏茂萌魏闯先占超群
申请(专利权)人:阿里巴巴中国有限公司
类型:发明
国别省市:

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

1