数据处理方法及相关设备技术

技术编号:39292905 阅读:18 留言:0更新日期:2023-11-07 11:00
本申请实施例提供了一种数据处理方法及相关设备,其中方法包括:获取待连接的N个数据表,并获取N个数据表的处理状态;N个数据表中每个数据表分别对应各自的处理分区;处理分区用于存储对应数据表的数据,处理分区包括内存区和磁盘区;其中N为大于1的整数;根据N个数据表的处理状态,确定N个数据表的连接方式;连接方式包括以下至少一种:内存区对内存区的连接、磁盘区对内存区的连接、磁盘区对磁盘区的连接;按照所确定的连接方式对N个数据表进行连接计算。通过本申请实施例,能够有效提升多个数据表连接计算的效率和性能。个数据表连接计算的效率和性能。个数据表连接计算的效率和性能。

【技术实现步骤摘要】
数据处理方法及相关设备


[0001]本申请涉及计算机
,尤其涉及一种数据处理方法、一种数据处理装置、一种计算机设备、一种计算机可读存储介质、一种计算机程序产品。

技术介绍

[0002]随着互联网的发展,互联网中产生的海量数据可通过数据库技术进行有效地管理和存取。在数据库技术中,海量数据能够通过数据表关联存储在数据库中,以便在业务场景下更加高效地获取相应业务所需的数据。举例来说,在数据查询的场景下,若查询的数据涉及多个数据表,那么会对多个数据表进行连接计算,快速得到最终的查询结果。然而,当数据量级较大并且数据表的数量比较多时,多个数据表之间的连接计算的性能比较差,计算效率不够高。

技术实现思路

[0003]本申请实施例提供一种数据处理方法及相关设备,可以提高连接计算的效率和计算性能。
[0004]一方面,本申请实施例提供了一种数据处理方法,该方法包括:
[0005]获取待连接的N个数据表,并获取N个数据表的处理状态;N个数据表中每个数据表分别对应各自的处理分区;处理分区用于存储对应数据表的数据,处理分区包括内本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种数据处理方法,其特征在于,包括:获取待连接的N个数据表,并获取所述N个数据表的处理状态;所述N个数据表中每个数据表分别对应各自的处理分区;所述处理分区用于存储对应数据表的数据,所述处理分区包括内存区和磁盘区;其中N为大于1的整数;根据所述N个数据表的处理状态,确定所述N个数据表的连接方式;所述连接方式包括以下至少一种:内存区对内存区的连接、磁盘区对内存区的连接、磁盘区对磁盘区的连接;按照所确定的连接方式对所述N个数据表进行连接计算。2.如权利要求1所述的方法,其特征在于,所述处理状态包括阻塞状态、非阻塞状态、耗尽状态中任一种;其中,所述阻塞状态是指数据表的新增数据无法写入至对应内存区的状态;所述非阻塞状态是指数据表的新增数据能够写入对应内存区的状态;所述耗尽状态是指数据表中无新增数据,且对应内存区中存储的数据表的数据均被处理完毕的状态。3.如权利要求2所述的方法,其特征在于,所述N个数据表中任意一个数据表表示为数据表A,所述数据表A对应处理分区a,所述处理分区a包括内存区a1和磁盘区a2;所述数据表A为动态表,所述内存区a1中存储有所述数据表A对应的内存哈希表,所述数据表A对应的内存哈希表包含一个或多个哈希值,每个哈希值用于表示所述数据表A中存储在所述内存区a1中的一个数据;所述数据表A的新增数据为数据i1;所述获取所述N个数据表的处理状态,包括:当接收到所述数据i1的哈希值时,检测所述内存区a1的剩余内存空间;若所述内存区a1的剩余内存空间大于或等于所述数据i1的哈希值所需的存储空间,则确定所述数据表A的处理状态为非阻塞状态;若所述内存区a1的剩余内存空间小于所述数据i1的哈希值所需的存储空间,则确定所述数据表A的处理状态为阻塞状态。4.如权利要求2所述的方法,其特征在于,所述N个数据表中任意一个数据表表示为数据表A,所述数据表A对应处理分区a,所述处理分区a包括内存区a1和磁盘区a2;所述数据表A为动态表,所述内存区a1中存储有所述数据表A对应的内存哈希表;所述获取所述N个数据表的处理状态,包括:获取所述内存区a1中存储的所述数据表A的数据的处理速度;若所述处理速度大于或等于预设速度阈值,则确定所述数据表A的处理状态为非阻塞状态;若所述处理速度小于所述预设速度阈值,则确定所述数据表A的处理状态为阻塞状态。5.如权利要求2所述的方法,其特征在于,所述N个数据表中任意一个数据表表示为数据表A,所述数据表A对应处理分区a,所述处理分区a包括内存区a1和磁盘区a2;所述数据表A为动态表,所述内存区a1中存储有所述数据表A对应的内存哈希表;所述获取所述N个数据表的处理状态,包括:获取所述内存区a1中存储的所述数据表A的数据的处理进度;若所述处理进度指示所述内存区a1中存储的所述数据表A的数据均被处理完毕,且所述数据表A中无新增数据,则确定所述数据表A的处理状态为耗尽状态。
6.如权利要求2所述的方法,其特征在于,所述根据所述N个数据表的处理状态,确定所述N个数据表的连接方式,包括:若所述N个数据表中存在至少一个数据表处于非阻塞状态,则确定所述N个数据表的连接方式为内存区对内存区的连接;若所述N个数据表均处于阻塞状态,则确定所述N个数据表的连接方式为磁盘区对内存区的连接;若所述N个数据表均处于耗尽状态,则确定所述N个数据表的连接方式为磁盘区对磁盘区的连接。7.如权利要求1、2、6中任一项所述的方法,其特征在于,所述N个数据表中任意两个需连接的数据表表示为数据表A和数据表B;所述数据表A对应处理分区a,所述处理分区a包括内存区a1和磁盘区a2;所述数据表B对应处理分区b,所述处理分区b包括内存区b1和磁盘区b2;所述按照所确定的连接方式对所述N个数据表进行连接计算,包括:若所确定的连接方式为内存区对内存区的连接,则将所述内存区a1中存储的所述数据表A的数据与所述内存区b1中存储的所述数据表B的数据进行合并;若所确定的连接方式为磁盘区对内存区的连接,则将所述磁盘区a2中存储的所述数据表A的数据与所述内存区b1中存储的所述数据表B的数据进行合并;若所确定的连接方式为磁盘区对磁盘区的连接,则将所述磁盘区a2中存储的所述数据表A的数据与所述磁盘区b2中存储的所述数据表B的数据进行合并。8.如权利要求7所述的方法,其特征在于,所述数据表A和所述数据表B均为动态表;所述内存区a1中存储有所述数据表A对应的内存哈希表;所述内存区b1中存储有所述数据表B对应的内存哈希表;所述数据表B对应的内存哈希表包含一个或多个哈希值,每个哈希值用于表示所述数据表B中存储在所述内存区b1中的一个数据;所述数据表A的新增数据为数据i1,且数据表A处于非阻塞状态;所述若所确定的连接方式为内存区对内存区的连接,则将所述内存区a1中存储的所述数据表A的数据与所述内存区b1中存储的所述数据表B的数据进行合并,包括:若所确定的连接方式为内存区对内存区的连接,则当接收到所述数据i1的哈希值时,将所述数据i1的哈希值插入至所述内存区a1中存储的所述数据表A对应的内存哈希表中;基于所述数据i1的哈希值,在所述内存区b1中存储的所述数据表B对应的内存哈希表中进行探测,得到数据j1的哈希值;所述数据j1是探测到的、需与所述数据i1进行连接的匹配项;将所述数据i1的哈希值与所述数据j1的哈希值进行合并。9.如权利要求7所述的方法,其特征在于,所述内存区b1中存储有所述数据表B对应的内存哈希表;所述磁盘区a2中存储的所述数据表A的数据包括数据i2;所述若所确定的连接方式为磁盘区对内存区的连接,则将所述磁盘区a2中存储的所述数据表A的数据与所述内存区b1中存储的所述数据表B的数据进行合并,包括:若所确定的连接方式为磁盘区对内存区的连接,则基于所述数据i2的哈希值,在所述内存区b1中存储的所述数据表B对应的内存哈希表中进行探测...

【专利技术属性】
技术研发人员:石志林
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:

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

1