[发明专利]数据查询方法和系统有效
| 申请号: | 201310135330.7 | 申请日: | 2013-04-18 |
| 公开(公告)号: | CN104111936B | 公开(公告)日: | 2017-12-05 |
| 发明(设计)人: | 康强;丁崔灿;郑色树;禹扬帆 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
| 主分类号: | G06F17/30 | 分类号: | G06F17/30 |
| 代理公司: | 北京国昊天诚知识产权代理有限公司11315 | 代理人: | 许志勇 |
| 地址: | 英属开曼群岛大开*** | 国省代码: | 暂无信息 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 数据 查询 方法 系统 | ||
技术领域
本申请涉及数据分析和处理领域,更具体地涉及一种数据查询方法和系统。
背景技术
这里的内容尽管是在背景技术标题下阐述的,但是其中也包含了本发明人的发现和构思,所以不应被完全视为现有技术。
随着云时代的来临,大数据吸引了越来越多的关注,大数据技术不在于掌握海量数据,而更着眼于在合理的时间内达到采集、处理并整理成为用户所需要的数据。
TOPN数据查询是海量数据处理中经常遇到的问题,其是指,按照某个维度或维度组合对相关数据进行排序,获取其中最靠“前”的一批子结果集的过程。在目前的TOPN数据查询处理中,通过单一设备来完成查询。具体而言,某一处理设备在接收到用户的查询命令之后,基于该查询命令,在本地或远程的数据库中查询出相关数据,并对相关数据进行挑选、分析、归类等处理,以获得符合查询命令的数据并返回。
在上述TOPN数据查询处理中,通常使用诸如Oracle公司的MySQL数据库之类的关系型数据库,其中包括一个或多个表,一个表是一个关系。在采用关系型数据库的方案中,当数据库中的数据增加到一定量级的时候,查询效率会急剧降低。例如,数据库数据量达到500万,并且所要查询的关键字在60万组时,系统就会由于数据库内存消耗速度上升导致查询无响应,若不中止任务,则会导致系统宕机。
于是通常用数据库分库的方式应对这一问题,但是,这对于数据存储和未来查询的扩展都会造成不便,因为数据库分库的关键字是某种业务的主键,这就要求所有需要进行查询处理的数据必须位于同一个关键字下。如果业务需求变化,关键字需要改变为其他维度,那么就会造成数据需要全量按新关键字重新组织,因此耗时耗存储。
为了克服上述关系型数据库中的问题,目前还研究使用了诸如Hbase数据库之类的非关系型数据库。在这种非关系型数据库中,可以处理超大量的数据。但是,对于多个维度的关键字查询处理而言,由于该非关系型数据库使用二级索引表,所以在海量数据更新时需要相应地动态更新索引文件的情况下,索引文件的可维护性和可操作性将会变得非常复杂,并且容易出错。
因此,期望一种能够克服上述缺陷以便提高数据查询速度和系统工作效率的技术。
发明内容
因此,本申请的主要目的在于,提供一种改进的数据查询处理技术,以解决上述现有技术存在的问题,提高数据查询速度和系统工作效率。
本申请发明人注意到,在目前的数据查询系统中,由于单一设备的数据查询量过大,造成系统性能瓶颈,从而导致数据查询速度和系统工作效率都难以得到提高。于是本申请发明人想到,通过计算机设备集群来分摊目前单一设备的数据查询量,并且在数据的处理上做TOPN过滤,由此来提高数据查询速度和效率。
根据本申请的一个方面的实施例,提供一种数据查询方法,包括:
计算机集群中的主设备接收查询命令;所述主设备将所述查询命令分发到所述计算机集群中的多个从设备;根据所述查询命令,所述多个从设备中的每一个从设备分别针对数据集合中的各自对应的数据块执行预查询处理,以得到各自对应的候选查询结果;所述多个从设备中的每一个从设备将各自得到的所述候选查询结果返回给所述主设备;所述主设备根据所述查询命令对所述候选查询结果中的数据进行最终查询处理,得到最终查询结果;以及所述主设备将所述最终查询结果返回。
根据本申请的另一方面的实施例,提供一种数据查询系统,包括主设备和多个从设备,所述主设备接收查询命令;所述主设备将所述查询命令分发到所述多个从设备;根据所述查询命令,所述多个从设备中的每一个从设备分别针对数据集合中的各自对应的数据块执行预查询处理,以得到各自对应的候选查询结果;所述多个从设备中的每一个从设备将各自得到的所述候选查询结果返回给所述主设备;所述主设备根据所述查询命令对所述候选查询结果中的数据进行最终查询处理,得到最终查询结果;以及所述主设备将所述最终查询结果返回。
在一个具体实施例中,所述数据集合对应的索引文件存储于每一个从设备的本地存储装置或远程存储装置中。
在一个具体实施例中,所述预查询处理包括:过滤步骤,用于根据所述查询命令中的条件特征和所述数据集合对应的索引文件,从对应的数据块中筛选出符合条件的数据;以及排序和选取步骤,用于根据所述查询命令中的顺序和数量特征,对筛选出的数据进行排序,并从排序后的数据中选取相应数量的数据作为所述候选查询结果。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310135330.7/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种遥感图像的检索方法
- 下一篇:电子装置、服务器管理控制系统及方法
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置





