[发明专利]数据查询方法和装置、电子设备、及介质在审
| 申请号: | 202011324614.7 | 申请日: | 2020-11-23 | 
| 公开(公告)号: | CN114528317A | 公开(公告)日: | 2022-05-24 | 
| 发明(设计)人: | 关毛毛;吕军;程建波 | 申请(专利权)人: | 京东科技控股股份有限公司 | 
| 主分类号: | G06F16/2453 | 分类号: | G06F16/2453;G06F16/2455 | 
| 代理公司: | 中科专利商标代理有限责任公司 11021 | 代理人: | 赵婷 | 
| 地址: | 100176 北京市大兴区北京经*** | 国省代码: | 北京;11 | 
| 权利要求书: | 查看更多 | 说明书: | 查看更多 | 
| 摘要: | |||
| 搜索关键词: | 数据 查询 方法 装置 电子设备 介质 | ||
本公开提供了一种数据查询方法。所述方法包括:获取第一查询语句,所述第一查询语句包括对M个数据表中的数据的关联式查询操作;根据所述M个数据表中每个数据表的查询过滤条件,获取所述每个数据表的查询行数;基于所述每个数据表的查询行数,从所述M个数据表中确定出查询行数最小的一个数据表,其中,以所述查询行数最小的数据表作为第一数据表;获取所述第一数据表基于其自己的查询过滤条件确定出的记录中所述关联式查询操作所依据的字段的数据列,得到候选关联数据列;以及基于分别从所述M个数据表各自的与所述候选关联数据列对应的记录中进行数据查询,得到最终查询结果。本公开还提供了一种数据查询装置、一种电子设备及计算机可读存储介质。
技术领域
本公开涉及计算机技术领域,更具体地,涉及一种数据查询方法和装置、一种电子设备、以及一种计算机可读存储介质。
背景技术
在进行数据查询时关联式查询操作join通常要关联多个数据表,因此相比都于单表查询join操作的数据量通常比较大,操作相对复杂,对数据查询的速率和效率影响也比较大。尤其是列式存储数据库clickhouse在多表关联查询上表现明显不足。
在现有clickhouse提供的技术中,单表的各类分析式查询已经比较完善,但是在面对风控分析需要的多表关联式查询上表现明显不足。这时由于多表关联的聚合性能明显比单表聚合降低,即使在相同数据体量下,一些情况下clickhouse查询速率会慢于presto等平台。join的问题,会让clickhouse以大数据量分析见长的能力无法发挥,甚至在一些场景下,分析师不得不继续回到presto去完成分析。
发明内容
有鉴于此,本公开实施例提供了一种可以减少join操作的数据量的数据查询方法、装置、电子设备、以及计算机可读存储介质。
本公开实施例的一个方面提供了一种数据查询方法。所述方法包括:获取第一查询语句,所述第一查询语句包括对M个数据表中的数据的关联式查询操作,其中,M为大于等于2的整数;根据所述M个数据表中每个数据表的查询过滤条件,获取所述每个数据表的查询行数;基于所述每个数据表的查询行数,从所述M个数据表中确定出查询行数最小的一个数据表,其中,以所述查询行数最小的数据表作为第一数据表;获取所述第一数据表基于其自己的查询过滤条件确定出的记录中所述关联式查询操作所依据的字段的数据列,得到候选关联数据列,其中,一个记录为数据表中的一行;以及基于分别从所述M个数据表各自的与所述候选关联数据列对应的记录中进行数据查询,得到最终查询结果。
根据本公开的实施例,所述获取第一查询语句包括:接收用户输入的所述第一查询语句;解析所述第一查询语句,得到所述第一查询语句对应的第一抽象语法树;以及从所述第一抽象语法树中得到所述M个数据表、所述M个数据表中每个数据表的查询过滤条件、以及所述关联式查询操作。
根据本公开的实施例,所述基于分别从所述M个数据表各自的与所述候选关联数据列对应的记录中进行数据查询,得到最终查询结果包括:以所述M个数据表中除所述第一数据表之外的每个数据表作为一个第二数据表,在每个所述第二数据表的查询过滤条件中追加新的查询过滤条件;基于每个所述第二数据表的所述新的查询过滤条件,修改所述第一查询语句,得到第二查询语句;以及按照所述第二查询语句进行数据查询,得到所述最终查询结果。
根据本公开的实施例,所述在每个所述第二数据表的查询过滤条件中追加新的查询过滤条件包括:获取所述第二数据表基于其自己的查询过滤条件确定出的记录中所述关联式查询操作所依据的字段的数据列,得到待比较关联数据列;基于所述待比较关联数据列与所述候选关联数据列的对比,设置所述新的查询过滤条件;以及将所述新的查询过滤条件追加到所述第二数据表的查询过滤条件中。
根据本公开的实施例,所述在每个所述第二数据表的查询过滤条件中追加新的查询过滤条件包括:在所述第一抽象语法树中,在每个所述第二数据表的查询过滤条件中追加新的查询过滤条件,得到第二抽象语法树。则,所述基于每个所述第二数据表的追加的查询过滤条件,修改所述第一查询语句,得到第二查询语句,包括基于所述第二抽象语法树,反向生成所述第二查询语句。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于京东科技控股股份有限公司,未经京东科技控股股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011324614.7/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置





