一种对分布式顺序表进行多维区间查询的方法及其系统技术方案

技术编号:8533035 阅读:285 留言:0更新日期:2013-04-04 16:10
本发明专利技术公开了一种对分布式顺序表进行多维区间查询的方法及其系统,其中方法包括:分别为所述分布式顺序表的每个索引列创建一张对应的二级索引表,各索引列对应的二级索引表的主键为该索引列值、所述分布式顺序表的主键值和该索引列值的长度三者的拼接值;当接收到区间查询请求时,依据所述查询请求的字段名称,从各所述二级索引表中查找所述字段名称对应的二级索引表,依据所述查询请求的字段值,从所述对应的二级索引表中查找所述查询请求字段值对应的记录位置,直接从所述分布式顺序表中的该记录位置读取相应的数据。本发明专利技术能大幅增加多维区间查询的速度,能够同时满足高性能、低存储开销和高可靠性的要求。

【技术实现步骤摘要】

本专利技术涉及分布式信息处理
,尤其涉及一种对分布式顺序表进行多维区间查询的方法及其系统
技术介绍
分布式顺序表(Distributed Ordered Table简称DOT)是一种最适用于海量数据(TB到PB级)下多维区间查询的数据库系统。在分布式顺序表上进行多维区间查询时,通常直接扫描全表筛选出满足条件的数据。在数据量非常大的时候,这种方法的查询速度缓慢,并且使系统负载很大,响应时间过长不能满足目前网络应用对海量数据进行实时检索的需求。
技术实现思路
本专利技术的主要目的即基于分布式顺序表构建索引,使其能够满足多维区间查询时的高性能、低存储开销和高可靠性要求。为达此目的,本专利技术采用以下技术方案本专利技术提出了一种对分布式顺序表进行多维区间查询的方法,包括分别为所述分布式顺序表的每个索引列创建一张对应的二级索引表,各索引列对应的二级索引表包括该索引列信息、所述分布式顺序表的主键信息;当接收到区间查询请求时,依据所述查询请求中查询条件对应的字段名称,从各所述二级索引表中查找所述字段名称对应的二级索引表,依据所述查询请求的查询条件,从所述对应的二级索引表中查找符合所述条件的记本文档来自技高网...

【技术保护点】
一种对分布式顺序表进行多维区间查询的方法,其特征在于,包括:分别为所述分布式顺序表的每个索引列创建一张对应的二级索引表,各索引列对应的二级索引表包括该索引列信息、所述分布式顺序表的主键信息;当接收到区间查询请求时,依据所述查询请求中查询条件对应的字段名称,从各所述二级索引表中查找所述字段名称对应的二级索引表,依据所述查询请求的查询条件,从所述对应的二级索引表中查找符合所述条件的记录,从各记录中读出该记录对应的主键值,依据所述主键值直接从所述分布式顺序表中读取相应的数据。

【技术特征摘要】
1.一种对分布式顺序表进行多维区间查询的方法,其特征在于,包括分别为所述分布式顺序表的每个索引列创建一张对应的二级索引表,各索引列对应的二级索引表包括该索引列信息、所述分布式顺序表的主键信息;当接收到区间查询请求时,依据所述查询请求中查询条件对应的字段名称,从各所述二级索引表中查找所述字段名称对应的二级索引表,依据所述查询请求的查询条件,从所述对应的二级索引表中查找符合所述条件的记录,从各记录中读出该记录对应的主键值,依据所述主键值直接从所述分布式顺序表中读取相应的数据。2.如权利要求1所述的对分布式顺序表进行多维区间查询的方法,其特征在于,各所述二级索引表的主键为该二级索引表对应的索引列、所述分布式顺序表的主键和该索引列的长度三者的拼接值,或者,各所述二级索引表的主键为该二级索引表对应的索引列、所述分布式顺序表的主键和所述分布式顺序表的主键的长度三者的拼接值。3.如权利要求1或2所述的对分布式顺序表进行多维区间查询的方法,其特征在于,当接收到区间查询请求时,首先对所述查询请求中的查询条件进行合并去重预处理,将预处理结果转化为析取式,从合取子式中选择结果集最小的子查询作为所述区间查询请求的查询条件。4.如权利要求3所述的对分布式顺序表进行多维区间查询的方法,其特征在于,所述从合取子式中选择结果集最小的子查询的方法包括分别根据各合取子式中每个分片的起止主键,计算各合取子式的查询范围所覆盖的分片数量,选择分片数量最少的合取子式的结果集。5.如权利要求1所述的对分布式顺序表进行多维区间查询的方法,其特征在于,还包括当需要进行数据更新时,首先将更新写入日志中,然后再分别更新所述分布式顺序表和索引表;当出现故障使部分数据丢失,使所述分布式顺序表和索引表数据不一致时,依据所述日志进行数据恢复。6.一种对分布式顺序表进行多维区间查询的系统,其特征在于,包括索引表建...

【专利技术属性】
技术研发人员:刘佳谷靖宇查礼
申请(专利权)人:北京普泽天玑数据技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1