[发明专利]数据查询方法、装置、设备和存储介质在审
申请号: | 201910298551.3 | 申请日: | 2019-04-15 |
公开(公告)号: | CN110032575A | 公开(公告)日: | 2019-07-19 |
发明(设计)人: | 董则恒;刘柏 | 申请(专利权)人: | 网易(杭州)网络有限公司 |
主分类号: | G06F16/242 | 分类号: | G06F16/242;G06F16/248 |
代理公司: | 北京同立钧成知识产权代理有限公司 11205 | 代理人: | 朱颖;刘芳 |
地址: | 310052 浙江省*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 数据查询 元数据信息 存储介质 多数据源 客户端 数据库 服务器发送 服务器接收 系统扩展性 查询 查询结果 数据系统 解析 存储 返回 | ||
1.一种数据查询方法,其特征在于,所述方法包括:
接收客户端发送的第一结构化查询语言SQL查询语句;
将所述第一SQL查询语句进行解析,得到对应的第一抽象语法树AST;
根据所述第一AST,获取所述第一SQL查询语句查询的第一数据的第一元数据信息;
根据所述第一元数据信息获取查询结果,并将所述查询结果返回所述客户端。
2.根据权利要求1所述的方法,其特征在于,所述AST包括所述第一数据所属的第一表名,所述根据所述第一AST,获取所述第一SQL查询语句查询的第一数据的第一元数据信息,包括:
从所述第一AST中提取所述第一表名;
根据所述第一表名和表名与元数据信息之间的对应关系,获取所述第一元数据信息。
3.根据权利要求1所述的方法,其特征在于,所述根据所述第一元数据信息获取查询结果,包括:
根据所述第一元数据信息,获取第一数据源;
通过SQL路由器进行将所述第一SQL查询语句路由到所述第一数据源;
从所述第一数据源查询获取所述查询结果,所述查询结果包括所述第一数据。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
若所述第一数据源不支持SQL语句,则对所述第一SQL查询语句进行转换,转换为所述第一数据源支持的查询语句。
5.根据权利要求1至4任一项所述的方法,其特征在于,所述方法还包括:
根据预设周期扫描各个数据源,对本地存储的各个数据源对应的元数据信息进行同步,每个元数据信息至少包括数据源类型、数据库名以及表名。
6.根据权利要求1至4任一项所述的方法,其特征在于,所述方法还包括:
对所述查询结果进行存储,并通过第一标识对所述查询结果进行标识。
7.根据权利要求1至4任一项所述的方法,其特征在于,所述将所述查询结果返回所述客户端,包括:
将所述查询结果包装成JSON返回所述客户端。
8.一种数据查询装置,其特征在于,包括:
接收模块,用于接收客户端发送的第一结构化查询语言SQL查询语句;
处理模块,用于将所述第一SQL查询语句进行解析,得到对应的第一抽象语法树AST;
所述处理模块还用于根据所述第一AST,获取所述第一SQL查询语句查询的第一数据的第一元数据信息;
查询模块,用于根据所述第一元数据信息获取查询结果;
发送模块,用于将所述查询结果返回所述客户端。
9.根据权利要求8所述的装置,其特征在于,所述AST包括所述第一数据所属的第一表名,所述处理模块具体用于:
从所述第一AST中提取所述第一表名;
根据所述第一表名和表名与元数据信息之间的对应关系,获取所述第一元数据信息。
10.根据权利要求8所述的装置,其特征在于,所述查询模块,具体用于:
根据所述第一元数据信息,获取第一数据源;
通过SQL路由器进行将所述第一SQL查询语句路由到所述第一数据源;
从所述第一数据源查询获取所述查询结果,所述查询结果包括所述第一数据。
11.根据权利要求10所述的装置,其特征在于,所述处理模块还用于:
若所述第一数据源不支持SQL语句,则对所述第一SQL查询语句进行转换,转换为所述第一数据源支持的查询语句。
12.根据权利要求8至11任一项所述的装置,其特征在于,所述处理模块还用于:
根据预设周期扫描各个数据源,对本地存储的各个数据源对应的元数据信息进行同步,每个元数据信息至少包括数据源类型、数据库名以及表名。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于网易(杭州)网络有限公司,未经网易(杭州)网络有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910298551.3/1.html,转载请声明来源钻瓜专利网。
- 上一篇:SQL语句的处理方法及装置
- 下一篇:一种业务处理方法以及装置