[发明专利]数据查询方法、设备、系统及存储介质有效
申请号: | 202310239766.4 | 申请日: | 2023-03-08 |
公开(公告)号: | CN115952203B | 公开(公告)日: | 2023-08-04 |
发明(设计)人: | 范阿冬;马云雷;顾汉杰;王彬;王桢;屈岳 | 申请(专利权)人: | 阿里巴巴(中国)有限公司 |
主分类号: | G06F16/2455 | 分类号: | G06F16/2455;G06F16/2457 |
代理公司: | 北京太合九思知识产权代理有限公司 11610 | 代理人: | 刘瑞霞 |
地址: | 311121 浙江省杭州市余杭*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 数据 查询 方法 设备 系统 存储 介质 | ||
1.一种数据查询方法,包括:
获取查询请求;所述查询请求对应的待查询数据源的数据是非固定模式存储的;
根据所述查询请求,构建所述查询请求对应的待查询数据的数据模式;
从所述待查询数据源中,读取待查询数据;
按照所述数据模式,组装所述待查询数据,以得到按照所述数据模式存储的数据;
根据所述数据模式和所述查询请求,对所述按照所述数据模式存储的数据进行计算操作,以得到查询结果;
其中,所述根据所述查询请求,构建所述查询请求对应的待查询数据的数据模式,包括:
对所述查询请求进行解析,以得到抽象语法树;
根据所述抽象语法树,确定所述待查询数据源及待查询列的属性;所述待查询列存储的数据包括所述待查询数据;
确定所述待查询列的数据类型;
根据所述待查询数据源的存储分布信息、所述待查询列的属性及所述待查询列的数据类型,构建所述数据模式。
2.根据权利要求1所述的方法,所述确定所述待查询列的数据类型,包括:
根据所述待查询列的属性,确定所述待查询列的数据类型;
和/或,
对所述查询请求进行语义分析,以得到所述查询请求包含的子句;根据所述查询请求包含的子句,确定对所述待查询列进行运算的函数和/或运算表达式;根据所述对所述待查询列进行运算的函数和/或运算表达式,确定所述待查询列的数据类型。
3.根据权利要求1所述的方法,所述从所述待查询数据源中,读取待查询数据,包括:
根据所述待查询列的属性,按照行扫描方式,扫描所述待查询数据源的数据;
从扫描到的数据行中,读取属性与所述待查询列的属性匹配的数据,作为所述待查询数据。
4.根据权利要求1所述的方法,所述根据所述数据模式和所述查询请求,对所述按照所述数据模式存储的数据进行计算,包括:
根据所述数据模式和所述查询请求对应的抽象语法树,生成执行计划;
根据所述执行计划,对所述按照所述数据模式存储的数据进行计算,以得到查询结果。
5.根据权利要求4所述的方法,所述执行计划包括:逻辑执行计划和物理执行计划;所述根据所述数据模式和所述查询请求对应的抽象语法树,生成执行计划,包括:
根据所述数据模式,将所述抽象语法树的节点与所述数据模式描述的表的元数据进行绑定,以得到逻辑执行计划;
根据所述待查询数据源的存储分布信息和所述逻辑执行计划,生成物理执行计划。
6.根据权利要求5所述的方法,所述根据所述执行计划,对所述按照所述数据模式存储的数据进行计算操作,包括:
根据所述物理执行计划,对所述按照所述数据模式存储的数据进行所述物理执行计划对应的计算操作,以得到所述查询结果。
7.根据权利要求1-6任一项所述的方法,还包括:
在得到所述查询结果之后,销毁所述数据模式。
8.一种数据库系统,包括:查询引擎和数据源;所述数据源包括:查询请求对应的待查询数据源;所述待查询数据源的数据为非固定模式存储的;
所述查询引擎用于执行权利要求1-7任一项所述的方法中的步骤。
9.一种计算设备,包括:存储器和处理器;其中,所述存储器,用于存储计算机程序;
所述处理器耦合至所述存储器,用于执行所述计算机程序以用于执行权利要求1-7任一项所述方法中的步骤。
10.一种存储有计算机指令的计算机可读存储介质,当所述计算机指令被一个或多个处理器执行时,致使所述一个或多个处理器执行权利要求1-7任一项所述方法中的步骤。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴(中国)有限公司,未经阿里巴巴(中国)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202310239766.4/1.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置