[发明专利]一种多维区间查询方法及系统有效
申请号: | 201010205946.3 | 申请日: | 2010-06-12 |
公开(公告)号: | CN101866358A | 公开(公告)日: | 2010-10-20 |
发明(设计)人: | 邹永强;刘佳;查礼;王世才 | 申请(专利权)人: | 中国科学院计算技术研究所 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京律诚同业知识产权代理有限公司 11006 | 代理人: | 祁建国;梁挥 |
地址: | 100080 北*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 多维 区间 查询 方法 系统 | ||
技术领域
本发明涉及计算机处理领域,尤其涉及一种多维区间查询系统及方法。
背景技术
资源发现需要多种条件的查询,其中多数查询可以转换为多维区间查询。事实上多维区间查询是网络应用的一个基本需求。简单的例子是在存储互联网图片信息的应用,设计者可能需要查询一段时间内点击数量最高的前100张图片,这种查询就涉及到了时间和点击量等多个属性(数据表的列,也叫维度、维)区间。
随着网络应用数据量的不断增大,现有方法均难以同时满足高性能、低存储开销和高可靠性的要求。通过对现有数据模型进行分类可知,应用需要支持多维区间查询的新数据模型。分布式顺序表(Distributed Ordered Table,DOT)是一种适用于海量数据(TB到PB级)下单个维度(仅仅是主键)区间查询的数据库系统,最有潜力通过增加索引支持多维区间查询。
在分布式顺序表上通常使用的索引方法是对需要查询的列建立二级索引,查询时先搜索二级索引再定位到数据表取出数据。这种方法会在检索数据表时产生随机读操作,而在分布式顺序表中随机读操作的速度相比顺序扫描(scan)有一个数量级的下降,所以在这种索引机制下多维区间查询的速度缓慢,响应时间过长不能满足目前网络应用对海量数据进行实时检索的需求。如果不建二级索引,而是为索引列建立聚簇索引以提高查询性能,则由于底层文件系统副本导致存储开销成倍增长。
本发明基于下述事实:
1、DOT系统中通常有3~5份副本用于提高性能和可靠性,以应对超大规模数据量。
2、应用使用多维区间查询时所需属性列数通常不超过5。
通过采集中国国家网格软件GOS中高性能计算网关(HPCG)应用的实际运行日志,记录并分析了其29小时时间区间内98.63万次操作,其中查询请求有96.1万次,占97%。这些查询请求具有如下规律:①全部的查询请求可以包括在“=”,“<”,“>”,“<=”,“>=”,“startswith”及其逻辑关系组合中,没有其它复杂的SQL语法需求;②单独查询请求所涉及的字段比较少。所有单独查询请求涉及的字段数量均小于等于5,又其中92%的请求涉及的字段数量小于等于4;④单独关系表涉及的支持查询的字段数量均少于等于5。
3、DOT上连续扫描的吞吐率远远高于随机读取。
例如Google的BigTable就是典型的DOT系统,其读写1KB长度记录的基本操作性能见表,从中可以看出顺序读是随机读的3.7倍,而连续扫描是随机读的12.7倍。
表1BigTable中基本操作性能
发明内容
为了解决上述的技术问题,本发明提供了一种多维区间查询系统及方法,其目的在于,基于分布式顺序表构建索引,使其支持多维区间查询,并同时满足高性能、低存储开销和高可靠性要求。
本发明公开了一种多维区间查询方法,包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院计算技术研究所,未经中国科学院计算技术研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201010205946.3/2.html,转载请声明来源钻瓜专利网。
- 上一篇:立体集成电路的验证方法
- 下一篇:一种三态内容寻址存储器的表项更新方法及装置