数据表处理方法、装置、计算机设备和存储介质制造方法及图纸

技术编号:35278808 阅读:15 留言:0更新日期:2022-10-22 12:20
本申请涉及一种数据表处理方法、装置、计算机设备和存储介质。所述方法涉及大数据,所述方法具体包括:获取待拼接的各个源数据表各自的元信息及拼接方式信息;其中,各个所述源数据表各自的元信息至少包括各个所述源数据表各自的字段名;各个所述源数据表为大数据仓库中的数据表;按照所述拼接方式信息将各个所述字段名组织成数据表,得到对应的宽表视图;根据各个所述源数据表各自的元信息及所述宽表视图生成数据协议;通过生成的所述数据协议表示将各个所述源数据表进行拼接得到的拼接结果。采用本方法能够有效地避免宽表拼接时内存溢出的现象。存溢出的现象。存溢出的现象。

【技术实现步骤摘要】
数据表处理方法、装置、计算机设备和存储介质


[0001]本申请涉及计算机
,特别是涉及一种数据表处理方法、装置、计算机设备和存储介质。

技术介绍

[0002]随着计算机技术的发展,出现了机器学习技术,机器学习中进行需要进行模型训练,模型训练所需的训练数据通常存储在大数据仓库中。在大数据仓库中,数据按照不同的主题分布在不同的数据表中。
[0003]传统技术中,由于通常在进行模型训练时,模型通常只能接收二维矩阵数据作为训练数据,因此,在对训练数据进行分析时,通过需要将这些数据涉及的数据表拼接成一张大宽表来进行表示。然而,在大数据仓库中,数据表非常多,且涉及的数据量非常巨大,这些数据表拼接将会导致表列数、计算元数据快速增加,往往会超出数据库仓库系统上限,导致内存溢出。

技术实现思路

[0004]基于此,有必要针对上述技术问题,提供一种能够有效地避免宽表拼接时内存溢出的数据表处理方法、装置、计算机设备和存储介质。
[0005]一种数据表处理方法,所述方法包括:获取待拼接的各个源数据表各自的元信息及拼接方式信息;各个所述源数据表各自的元信息至少包括各个所述源数据表各自的字段名;按照所述拼接方式信息将各个所述字段名组织成数据表,得到对应的宽表视图;根据各个所述源数据表各自的元信息及所述宽表视图生成数据协议;通过生成的所述数据协议表示将各个所述源数据表进行拼接得到的拼接结果。
[0006]一种数据表处理装置,所述装置包括:信息获取模块,用于获取待拼接的各个源数据表各自的元信息及拼接方式信息;各个所述源数据表各自的元信息至少包括各个所述源数据表各自的字段名;数据拼接模块,用于按照所述拼接方式信息将各个所述字段名组织成数据表,得到对应的宽表视图;数据协议生成模块,用于根据各个所述源数据表各自的元信息及所述宽表视图生成数据协议;拼接结果表示模块,用于通过生成的所述数据协议表示将各个所述源数据表进行拼接得到的拼接结果。
[0007]在一些实施例中,数据协议生成模块还用于根据各个所述源数据表各自的元信息构建逻辑层;基于所述宽表视图构建用户层;根据所述逻辑层和所述用户层生成所述数据协议。
[0008]在一些实施例中,拼接结果表示模块,还用于通过所述数据协议对应的宽表视图接收针对所述拼接结果的初始数据变换信息;根据各个所述源数据表各自的字段名确定所述初始数据变换信息对应的目标数据表,并根据所述初始数据变换信息生成对所述目标数据表的目标数据变换信息;所述目标数据变换信息用于表征对所述目标数据表执行对应的数据变换;通过所述数据协议记录所述目标数据变换信息,以更新所述数据协议。
[0009]在一些实施例中,拼接结果表示模块,还用于通过所述数据协议对应的宽表视图接收针对所述拼接结果的计算图;其中,所述计算图包括至少两个图节点;所述图节点为行选择算子、列选择算子和列生成算子中的任意一种;根据各个所述源数据表各自的字段名确定所述计算图对应的目标数据表,并根据所述计算图生成对所述目标数据表的目标数据变换信息。
[0010]在一些实施例中,当所述图节点为行选择算子时;拼接结果表示模块,还用于将所述行选择算子对应的列信息与各个所述源数据表各自的字段名进行比对,根据比对结果确定目标数据表;根据所述行选择算子生成对所述目标数据表的目标行选择信息;所述目标行选择信息用于表征对所述目标数据表执行对应的行选择操作;通过所述数据协议记录所述目标行选择信息,以更新所述数据协议。
[0011]在一些实施例中,当所述图节点为列选择算子时;拼接结果表示模块,还用于将所述列选择算子对应的列信息与各个所述源数据表各自的字段名进行比对,根据比对结果确定目标数据表;根据所述列选择算子生成对所述目标数据表的目标列选择信息;所述目标列选择信息用于表征对所述目标数据表执行对应的列选择操作;通过所述数据协议记录所述目标列选择信息,以更新所述数据协议;对所述宽表视图执行所述列选择操作。
[0012]在一些实施例中,当所述图节点为列生成算子时;拼接结果表示模块,还用于将所述列生成算子对应的列信息与各个所述源数据表各自的字段名进行比对,根据比对结果确定目标数据表;根据所述列生成算子生成对所述目标数据表的目标列生成信息;所述目标列生成信息用于表征对所述目标数据表执行对应的列生成操作;通过所述数据协议记录所述目标列生成信息,以更新所述数据协议;对所述宽表视图执行所述列生成操作。
[0013]在一些实施例中,所述目标数据表包括多个;拼接结果表示模块,还用于确定与多个所述目标数据表对应的逻辑拼接信息;根据所述列生成算子生成对所述逻辑拼接信息对应的目标拼接数据表的列生成信息;将所述逻辑拼接信息及所述目标拼接数据表的列生成信息确定为所述多个目标数据表的目标列生成信息。
[0014]在一些实施例中,待拼接的各个所述源数据表组成源数据表集合;所述数据表处理装置还包括:发送模块,所述发送模块用于向服务器发送数据落地请求;所述数据落地请求携带各个所述源数据表各自的元信息、目标数据变换信息及数据落地模式信息;所述目标数据变换信息是通过将所述数据协议的宽表视图接收的、针对所述拼接结果的初始数据变换信息,转换为针对所述源数据表集合中的源数据表生成的;各个源数据表各自的元信息包括各个所述源数据表各自的位置信息;所述服务器用于根据所述目标数据变换信息及所述目标数据变换信息对应的目标源数据表的位置信息,对所述目标源数据表执行数据变换操作,以更新所述源数据表集合;当所述数据落地模式信息为第一预设信息时,所述服务器根据各个源数据表各自的位置信息获取更新后的源数据表集合中各个源数据表并进行存储。
[0015]在一些实施例中,所述服务器还用于当所述数据落地模式信息为第二预设信息时,所述服务器根据各个源数据表各自的元信息获取更新后的源数据表集合中各个源数据表,将更新后的源数据表集合中各个所述源数据表进行分组,得到多个数据表组;所述服务器分别拼接各个数据表组中数据表,得到各个数据表组各自的当前拼接数据表;所述服务器将各个当前拼接数据表进行分组,得到多个数据表组;所述服务器重复进入所述服务器
分别拼接各个数据表组中数据表的步骤,直至得到包含更新后的源数据表集合中所有源数据的目标宽表;所述服务器存储所述目标宽表。
[0016]一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:获取待拼接的各个源数据表各自的元信息及拼接方式信息;各个所述源数据表各自的元信息至少包括各个所述源数据表各自的字段名;按照所述拼接方式信息将各个所述字段名组织成数据表,得到对应的宽表视图;根据各个所述源数据表各自的元信息及所述宽表视图生成数据协议;通过生成的所述数据协议表示将各个所述源数据表进行拼接得到的拼接结果。
[0017]一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:获取待拼接的各个源数据表各自的元信息及拼接方式信息;各个所述源数据表各自的元信息至少包括各个所述源数据本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据表处理方法,其特征在于,所述方法包括:获取待拼接的各个源数据表各自的元信息及拼接方式信息;各个所述源数据表各自的元信息至少包括各个所述源数据表各自的字段名;按照所述拼接方式信息将各个所述字段名组织成数据表,得到对应的宽表视图;根据各个所述源数据表各自的元信息及所述宽表视图生成数据协议;通过生成的所述数据协议表示将各个所述源数据表进行拼接得到的拼接结果。2.根据权利要求1所述的方法,其特征在于,所述根据各个所述源数据表各自的元信息及所述宽表视图生成数据协议包括:根据各个所述源数据表各自的元信息构建逻辑层;基于所述宽表视图构建用户层;根据所述逻辑层和所述用户层生成所述数据协议。3.根据权利要求1所述的方法,其特征在于,所述通过生成的所述数据协议表示将各个所述源数据表进行拼接得到的拼接结果包括:通过所述数据协议对应的宽表视图接收针对所述拼接结果的初始数据变换信息;根据各个所述源数据表各自的字段名确定所述初始数据变换信息对应的目标数据表,并根据所述初始数据变换信息生成对所述目标数据表的目标数据变换信息;所述目标数据变换信息用于表征对所述目标数据表执行对应的数据变换;通过所述数据协议记录所述目标数据变换信息,以更新所述数据协议。4.根据权利要求3所述的方法,其特征在于,所述通过所述数据协议对应的宽表视图接收针对所述拼接结果的初始数据变换信息包括:通过所述数据协议对应的宽表视图接收针对所述拼接结果的计算图;其中,所述计算图包括至少两个图节点;所述图节点为行选择算子、列选择算子和列生成算子中的任意一种;所述根据各个所述源数据表各自的字段名确定所述初始数据变换信息对应的目标数据表,并根据所述初始数据变换信息生成对所述目标数据表的目标数据变换信息包括:根据各个所述源数据表各自的字段名确定所述计算图对应的目标数据表,并根据所述计算图生成对所述目标数据表的目标数据变换信息。5.根据权利要求4所述的方法,其特征在于,当所述图节点为行选择算子时;所述根据各个所述源数据表各自的字段名确定所述计算图对应的目标数据表,并根据所述计算图生成对所述目标数据表的目标数据变换信息包括:将所述行选择算子对应的列信息与各个所述源数据表各自的字段名进行比对,根据比对结果确定目标数据表;根据所述行选择算子生成对所述目标数据表的目标行选择信息;所述目标行选择信息用于表征对所述目标数据表执行对应的行选择操作;所述通过所述数据协议记录所述目标数据变换信息,以更新所述数据协议包括:通过所述数据协议记录所述目标行选择信息,以更新所述数据协议。6.根据权利要求4所述的方法,其特征在于,当所述图节点为列选择算子时;所述根据各个所述源数据表各自的字段名确定所述计算图对应的目标数据表,并根据所述计算图生成对所述目标数据表的目标数据变换信息包括:
将所述列选择算子对应的列信息与各个所述源数据表各自的字段名进行比对,根据比对结果确定目标数据表;根据所述列选择算子生成对所述目标数据表的目标列选择信息;所述目标列选择信息用于表征对所述目标数据表执行对应的列选择操作;所述通过所述数据协议记录所述目标数据变换信息,以更新所述数据协议包括:通过所述数据协议记录所述目标列选择信息,以更新所述数据协议;所述通过生成的所述数据协议表示将各个所述源数据表进行拼接得到的拼接结果还包括:对所述宽表视图执行所述列选择操作。7.根据权利要求4所述的方法,其特征在于,当所述图节点为列生成算子时;所述根据各个所述源数据表各自的字段名确定所述计算图对应的目标数据表,并根据所述计算图生成对所述目标数据表的目标数据变换信息包括:将所述列生成算子对应的列信息与各个所述源数据表各自的字段名进行比对,根据比对结果确定目标数据表;根据所述列生成算子生成对所述目标数据表的目标列生成信息;所述目标列生成信息用于表征对所述目标数据表执行对应的列生成操作;所述通过所述数据协议记录所述目标数据变换信息,以更新所述数据协议包括:通过所述数据协议记录所述目标列生成信息,以更新所述数据协议;所述通过生成的所述数据协议表示将各个所述源数据表进行拼接得到的拼接结果还包括:对所述宽表视图执行所述列生成操作。8.根据权利要求7所述的方法,其特征在于,所述目标数据表包括多个;所述根据所述列生成算子生成对所述目标数据表的目标列生成信息包括:确定与多个所述目标数据表对应的逻辑拼接信息;根据所述列生成算子生成对所述逻辑拼接信息对应的目标拼接数据表的列生成信息;将所述逻辑拼接信息及所述目标拼接数据表的列生成信息确定为所述多个目标数据表的目标列生成信息。9.根据权利要求1所...

【专利技术属性】
技术研发人员:程哲豪董井然陈守志
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:

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

1