[发明专利]一种数据查询方法和系统在审
申请号: | 201810354417.6 | 申请日: | 2018-04-19 |
公开(公告)号: | CN110399397A | 公开(公告)日: | 2019-11-01 |
发明(设计)人: | 安海雄 | 申请(专利权)人: | 北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司 |
主分类号: | G06F16/2455 | 分类号: | G06F16/2455 |
代理公司: | 中原信达知识产权代理有限责任公司 11219 | 代理人: | 张一军;张效荣 |
地址: | 100195 北京市海淀区杏石口路6*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 聚合处理 数据查询请求 数据查询 数据节点 查询 聚合 存储 计算机技术领域 查询结果 查询请求 接收数据 并发 申请 | ||
本发明公开了一种数据查询方法和系统,涉及计算机技术领域。该方法的一具体实施方式包括:接收数据查询请求和SQL查询语句;其中,所述数据查询请求包括键名;在存储有键值对的数据节点中进行查询,以获取所述键名对应的键值;其中,所述键值对包括键名和键值;根据所述SQL查询语句对所述键值进行聚合处理,得到聚合处理结果。该实施方式根据数据查询请求的键名,在存储有键值对的数据节点进行查询获取对应的键值,之后按照SQL查询语句对所述键值进行聚合处理。通过上述方式实现了对H/V的查询结果进行SQL聚合,使得本申请能够进行高并发、高性能、且支持SQL聚合的查询。
技术领域
本发明涉及计算机领域,尤其涉及一种数据查询方法和系统。
背景技术
数据库按照查询类型可以分为两类,一类是基于SQL(Structured QueryLanguage,结构化查询语言)查询的关系型数据库,另一类是基于Key/Value(键/值,简称K/V)查询的非关系型数据库。关系型数据库常用于复杂业务关系的数据存储与查询,优点是可以对各种数据进行聚合处理;非关系型数据库常用于简单查询,优点是速度快,常见的非关系型数据库如HBase、Redis。
在某些业务场景下,经常需要既支持K/V查询,也支持SQL查询。比如在大数据量报表查询中,经常需要先根据某个Key(键)查询,然后再对查询出的数据进行聚合处理。现有技术中通过以下两种方式解决上述问题,方式一:将报表数据推送到Hive(基于Hadoop的SQL大数据查询引擎,Hadoop是一种分布式系统基础架构)中,之后通过Presto或者Impala(Presto和Impala均是基于分布式文件系统的大数据查询引擎)等基于Hive的工具进行查询,对查询结果进行聚合处理后提供给前端展示。方式二:将报表数据以查询条件拼成RowKey(主键),之后将RowKey对应的数据推送到HBase中进行查询,在应用程序中对查询结果进行聚合处理后提供给前端展示。
在实现本发明过程中,发明人发现现有技术中至少存在如下问题:方式一适合处理执行时间长(几秒、几十秒、甚至几个小时),并发小的查询。然而大数据量报表查询属于即席查询,要求查询性能高,并发大,一般需要毫秒级响应。方式二虽然能够解决性能与并发问题,但是需要在应用程序中编写聚合处理逻辑,给软件开发带来很大的不便。
发明内容
有鉴于此,本发明实施例提供一种数据查询方法和系统,根据数据查询请求的键名,在存储有键值对的数据节点进行查询获取对应的键值,之后按照SQL查询语句对所述键值进行聚合处理。通过上述方式实现了对H/V的查询结果进行SQL聚合,使得本申请能够进行高并发、高性能、且支持SQL聚合的查询。
实现上述目的,根据本发明实施例的一个方面,提供了一种数据查询方法。
本发明实施例的一种数据查询方法,包括:接收数据查询请求和SQL查询语句;其中,所述数据查询请求包括键名;在存储有键值对的数据节点中进行查询,以获取所述键名对应的键值;其中,所述键值对包括键名和键值;根据所述SQL查询语句对所述键值进行聚合处理,得到聚合处理结果。
可选地,所述在存储有键值对的数据节点中进行查询,包括:从元数据中获取所述键名对应的IP地址和端口号;其中,所述元数据中包括所述键名以及所述存储有键值对的数据节点的IP地址和端口号;根据所述键名,在所述IP地址和端口号对应的数据节点中进行查询。
可选地,所述根据所述SQL查询语句对所述键值进行聚合处理,包括:将所述键值格式化为SQLite文件,根据所述SQL查询语句对所述SQLite文件进行聚合处理。
可选地,所述数据查询请求还包括空间名和表名;所述元数据还包括所述空间名和所述表名;所述从元数据中获取所述键名对应的IP地址和端口号,包括:根据所述数据查询请求中的空间名、表名和键名,从所述元数据中获取与所述空间名、表名和键名相对应的IP地址和端口号。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司,未经北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810354417.6/2.html,转载请声明来源钻瓜专利网。
- 上一篇:高效的数据处理
- 下一篇:输电线路通道可视化告警高发区域的识别方法