基于分布式数据库系统的数据查询方法、装置及系统制造方法及图纸

技术编号:32969177 阅读:11 留言:0更新日期:2022-04-09 11:31
本公开提供了一种基于分布式数据库系统的数据查询方法、装置及系统,涉及人工智能技术领域中的大数据和云服务领域,方法包括:向存储第一表的第一工作设备发送第一查询任务,数据查询请求用于获取待查询数据,第一查询任务用于指示查询第一表中的与数据查询请求对应的关联值,接收第一工作设备反馈的关联值,并根据关联值向存储第二表的第二工作设备发送第二查询任务,第二查询任务用于指示查询第二表中与关联值对应的反馈数据,接收第二工作设备发送的反馈数据,根据反馈数据确定并输出待查询数据,降低了数据扫描量,提高了数据查询效率。询效率。询效率。

【技术实现步骤摘要】
基于分布式数据库系统的数据查询方法、装置及系统


[0001]本公开涉及人工智能
中的大数据和云服务领域,尤其涉及一种基于分布式数据库系统的数据查询方法、装置及系统。

技术介绍

[0002]在数据库技术中,如在基于数据库技术的分布式数据库系统中,联表查询(也可以称为连接查询、联合查询等)通常是最耗费资源的操作之一。
[0003]在分布式数据库系统中,联表查询通常包括两张表,一张为左表,一张为右表,通常先查询右边而后查询左表,且目前,通常采用动态过滤(也可以称为动态分区裁剪)的方法进行联表查询,然而,采用动态分区裁剪的方法时,将右表广播至存储左表的工作设备,以便基于存储左表的工作设备进行左表查询,从而得到相应的数据。
[0004]然而,采用动态分区裁减方法进行联表查询时,需进行广播,导致消耗的资源较多。

技术实现思路

[0005]本公开提供了一种用于降低资源损耗的基于分布式数据库系统的数据查询方法、装置及系统。
[0006]根据本公开的第一方面,提供了一种基于分布式数据库系统的数据查询方法,包括:
[0007]响应于接收到数据查询请求,向存储第一表的第一工作设备发送第一查询任务;其中,所述数据查询请求用于获取待查询数据,所述第一查询任务用于指示查询第一表中的与所述数据查询请求对应的关联值,所述第一表与第二表之间具有数据关联关系;
[0008]接收所述第一工作设备反馈的关联值,并根据所述关联值向存储所述第二表的第二工作设备发送第二查询任务;其中,所述第二查询任务用于指示查询第二表中与所述关联值对应的反馈数据;
[0009]接收所述第二工作设备发送的反馈数据,根据所述反馈数据确定并输出所述待查询数据。
[0010]根据本公开的第二方面,提供了一种用于分布式数据库系统的数据查询方法,包括:
[0011]接收调度设备发送的第一查询任务,其中,所述第一查询任务是根据数据查询请求确定的,所述查询请求用于获取待查询数据,所述第一查询任务用于指示查询第一表中的与所述数据查询请求对应的关联值,所述第一表与第二表之间具有数据关联关系;
[0012]根据所述第一查询任务对工作设备中的第一表进行查询处理,得到并向所述调度设备反馈关联值,其中,所述关联值用于生成第二查询任务,所述第二查询任务用于获取并输出所述待查询数据。
[0013]根据本公开的第三方面,提供了一种基于分布式数据库系统的数据查询装置,包
括:
[0014]第一发送单元,用于响应于接收到数据查询请求,向存储第一表的第一工作设备发送第一查询任务;其中,所述数据查询请求用于获取待查询数据,所述第一查询任务用于指示查询第一表中的与所述数据查询请求对应的关联值,所述第一表与第二表之间具有数据关联关系;
[0015]第一接收单元,用于接收所述第一工作设备反馈的关联值;
[0016]第二发送单元,用于根据所述关联值向存储所述第二表的第二工作设备发送第二查询任务;其中,所述第二查询任务用于指示查询第二表中与所述关联值对应的反馈数据;
[0017]第二接收单元,用于接收所述第二工作设备发送的反馈数据;
[0018]确定单元,用于根据所述反馈数据确定所述待查询数据;
[0019]输出单元,用于输出所述待查询数据。
[0020]根据本公开的第四方面,提供了一种用于分布式数据库系统的数据查询装置,包括:
[0021]第三接收单元,用于接收调度设备发送的第一查询任务,其中,所述第一查询任务是根据数据查询请求确定的,所述查询请求用于获取待查询数据,所述第一查询任务用于指示查询第一表中的与所述数据查询请求对应的关联值,所述第一表与第二表之间具有数据关联关系;
[0022]第一查询单元,用于根据所述第一查询任务对工作设备中的第一表进行查询处理,得到关联值,其中,所述关联值用于生成第二查询任务,所述第二查询任务用于获取并输出所述待查询数据;
[0023]反馈单元,用于向所述调度设备反馈所述关联值。
[0024]根据本公开的第五方面,提供了一种电子设备,包括:
[0025]至少一个处理器;以及
[0026]与所述至少一个处理器通信连接的存储器;其中,
[0027]所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行第一方面所述的方法;或者,以使所述至少一个处理器能够执行第二方面所述的方法。
[0028]根据本公开的第六方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行根据第一方面所述的方法;或者,所述计算机指令用于使所述计算机执行根据第二方面所述的方法。
[0029]根据本公开的第七方面,提供了一种计算机程序产品,所述计算机程序产品包括:计算机程序,所述计算机程序存储在可读存储介质中,电子设备的至少一个处理器可以从所述可读存储介质读取所述计算机程序,所述至少一个处理器执行所述计算机程序使得电子设备执行第一方面或者第二方面所述的方法。
[0030]根据本公开的第八方面,提供了一种分布式数据库系统,包括:调度设备和至少一个工作设备,其中,
[0031]所述调度设备包括如第三方面所述的装置;
[0032]所述工作设备包括如第四方面所述的装置。
[0033]应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特
征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
[0034]附图用于更好地理解本方案,不构成对本公开的限定。其中:
[0035]图1是根据本公开第一实施例的示意图;
[0036]图2是根据本公开实施例的原理示意图;
[0037]图3是根据本公开第二实施例的示意图;
[0038]图4是根据本公开第三实施例的示意图;
[0039]图5是根据本公开第四实施例的示意图;
[0040]图6是根据本公开第五实施例的示意图;
[0041]图7是根据本公开第六实施例的示意图;
[0042]图8是根据本公开第七实施例的示意图;
[0043]图9是根据本公开第八实施例的示意图;
[0044]图10是根据本公开第九实施例的示意图;
[0045]图11是用来实现本公开实施例的基于分布式数据库系统的数据查询方法的电子设备的框图。
具体实施方式
[0046]以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
[0047]在数据库技术中,联表查询是数据库技术的重要技术之一。用于本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于分布式数据库系统的数据查询方法,所述方法包括:响应于接收到数据查询请求,向存储第一表的第一工作设备发送第一查询任务;其中,所述数据查询请求用于获取待查询数据,所述第一查询任务用于指示查询第一表中的与所述数据查询请求对应的关联值,所述第一表与第二表之间具有数据关联关系;接收所述第一工作设备反馈的关联值,并根据所述关联值向存储所述第二表的第二工作设备发送第二查询任务;其中,所述第二查询任务用于指示查询所述第二表中与所述关联值对应的反馈数据;接收所述第二工作设备发送的反馈数据,根据所述反馈数据确定并输出所述待查询数据。2.根据权利要求1所述的方法,其中,根据所述关联值向存储所述第二表的第二工作设备发送第二查询任务,包括:根据所述关联值预测得到与所述关联值对应的谓词;根据所述关联值、以及与所述关联值对应的谓词生成所述第二查询任务,并向所述第二工作设备发送所述第二查询任务。3.根据权利要求2所述的方法,其中,所述关联值的数量为多个;根据所述关联值预测得到与所述关联值对应的谓词,包括:预测各关联值对应于所述第二表中的数据的共性特征;根据所述共性特征确定与所述关联值对应的谓词。4.根据权利要求1

3中任一项所述的方法,其中,根据所述关联值向存储所述第二表的第二工作设备发送第二查询任务,包括:对所述数据查询请求进行语法解析处理和语义分析处理,得到处理后的数据查询请求;根据所述处理后的数据查询请求生成执行逻辑信息,所述执行逻辑信息用于执行数据查询的执行逻辑相关的信息;生成包括所述关联值和所述执行逻辑信息的第二查询任务,并向所述第二工作设备发送所述第二查询任务。5.根据权利要求1

4中任一项所述的方法,其中,所述第一工作设备的数量为多个,所述第二查询任务中的关键值为对各第一工作设备反馈的关键值进行汇总处理得到的集合中的值。6.根据权利要求1

5中任一项所述的方法,其中,所述第二工作设备为多个;根据所述反馈数据确定并输出待查询数据,包括:对各第二工作设备各自发送的反馈数据进行汇总处理,得到汇总后的数据;将所述汇总后的数据确定为待查询数据,并输出所述待查询数据。7.根据权利要求1

6中任一项所述的方法,其中,响应于接收到数据查询请求,向存储第一表的第一工作设备发送第一查询任务,包括:确定所述第一表与所述第二表之间的联接键和谓词,根据所述联接键和所述谓词生成所述第一查询任务,并向所述第一工作设备发送第一查询任务。8.根据权利要求1

7中任一项所述的方法,其中,所述第一表为左表,所述第二表为右表。
9.根据权利要求1

7中任一项所述的方法,其中,所述第一表为右表,所述第二表为左表,所述右表的内容大于或等于所述左表的内容。10.一种用于分布式数据库系统的数据查询方法,包括:接收调度设备发送的第一查询任务,其中,所述第一查询任务是根据数据查询请求确定的,所述查询请求用于获取待查询数据,所述第一查询任务用于指示查询第一表中的与所述数据查询请求对应的关联值,所述第一表与第二表之间具有数据关联关系;根据所述第一查询任务对工作设备中的第一表进行查询处理,得到并向所述调度设备反馈关联值,其中,所述关联值用于生成第二查询任务,所述第二查询任务用于获取并输出所述待查询数据。11.根据权利要求10所述的方法,其中,所述第二查询任务是根据所述关联值、以及与所述关联值对应的谓词生成,与所述关联值对应的谓词是根据所述关联值预测得到的。12.根据权利要求11所述的方法,其中,与所述关联值对应的谓词是,根据各关联值对应于所述第二表中的数据的共性特征确定的。13.根据权利要求10

12中任一项所述的方法,还包括:接收所述调度设备发送的第二查询任务;根据所述第二查询任务对所述工作设备中的第二表进行查询处理,得到并向所述调度设备发送反馈数据,其中,所述反馈数据用于确定所述待查询数据。14.根据权利要求13所述的方法,其中,所述第二查询任务是根据所述关联值和执行逻辑信息生成的,所述执行逻辑信息是对所述数据查询请求进行语法解析处理和语义分析处理,得到处理后的数据查询请求,并根据所述处理后的数据查询请求生成的,所述执行逻辑信息用于执行数据查询的执行逻辑相关的信息。15.根据权利要求10

12中任一项所述的方法,其中,所述第一查询任务是确定所述第一表与所述第二表之间的联接键和谓词,并根据所述联接键和所述谓词生成的。16.根据权利要求10

12中任一项所述的方法,其中,所述第一表为左表,所述第二表为右表。17.根据权利要求10

12中任一项所述的方法,其中,所述第一表为右表,所述第二表为左表,所述右表的内容大于或等于所述左表的内容。18.一种基于分布式数据库系统的数据查询装置,包括:第一发送单元,用于响应于接收到数据查询请求,向存储第一表的第一工作设备发送第一查询任务;其中,所述数据查询请求用于获取待查询数据,所述第一查询任务用于指示查询第一表中的与所述数据查询请求对应的关联值,所述第一表与第二表之间具有数据关联关系;第一接收单元,用于接收所述第一工作设备反馈的关联值;第二发送单元,用于根据所述关联值向存储所述第二表的第二工作设备发送第二查询任务;其中,所述第二查询任务用于指示查询所述第二表中与所述关联值对应的反馈数据;第二接收单元,用于接收所述第二工作设备发送的反馈数据;确定单元,用于根据所述反馈数据确定所述待查询数据;输出单元,用于输出所述待查询数据。19.根据权利要求18所述的装置,其中,所述第二发送单元,包括:
预测子单元,用...

【专利技术属性】
技术研发人员:张奇伟
申请(专利权)人:北京百度网讯科技有限公司
类型:发明
国别省市:

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

1