[发明专利]一种提高海量数据查询性能的正交多哈希映射索引方法在审

专利信息
申请号: 201610019838.4 申请日: 2016-01-13
公开(公告)号: CN105608224A 公开(公告)日: 2016-05-25
发明(设计)人: 葛微;李先贤;王利娥 申请(专利权)人: 广西师范大学
主分类号: G06F17/30 分类号: G06F17/30
代理公司: 桂林市华杰专利商标事务所有限责任公司 45112 代理人: 刘梅芳
地址: 541004 广西壮*** 国省代码: 广西;45
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 提高 海量 数据 查询 性能 正交 多哈 映射 索引 方法
【说明书】:

技术领域

发明涉及大数据上的非主键查询、多条件查询、模糊查询、多关键字联合查询等复杂查询技术,具体是一种提高海量数据查询性能的正交多哈希映射索引方法。

背景技术

大数据上的查询是一项有挑战性的工作。从谷歌公司在2006年提出大数据处理的三驾马车:GFS文件系统、MapReduce并行计算框架、BigTable数据存储后,数据的存储和处理逐步从传统的基于关系模型的关系数据库过渡到基于键值对数据模型的非结构化数据存储系统。构建在分布式文件系统上的键值对数据存储通过分布式文件系统和多数据备份提供关系数据库无法比拟的可扩展性和容错性。理论上,搭建在一般的商用计算机(而非专用服务器)上的数据集群中心可以提供无限容量的大数据存储和查询服务。

另一方面,随着内存和固态硬盘等硬件设备的迅猛发展,大数据上的查询优化策略不再是依赖于关系代数理论的查询优化方法,而是通过高效的多层存储体系结构和适应新的硬件特点的文件管理方法来提供软硬结合的查询优化手段。缓存是数据查询优化的重要手段,它是一项使用即获益的技术。将频繁访问的数据项存储在性能更高而容量有限的设备,比如内存中,可以大大降低数据中的磁盘访问次数,从而大幅度提高查询效率。因此,众多的数据存储系统都提供了基于多层存储体系结构的解决方案:将数据按照访问热度分类,将频繁访问的数据缓存到内存或者固态硬盘中。如英特尔公司开发的SILT系统,SAP公司开发的HyPer系统,等等。

索引是关系数据库上提高数据查询处理能力的重要手段,比如为了减少磁盘访问而设计的平衡多路查找树B树及其变种B+树、B*树,它们是现在数据库系统中最常使用的索引结构。此外,还有为解决高维数据检索而提出的R树及其变种R+树、R*树;为内存数据库设计的索引T树及众多变种T*树,pkT树,pkB树等等。在大数据的场景下,数据体量大、数据价值密度低、数据实时更新速度快,因此在大数据上建立索引树结构的平衡性维护代价(数据的插入和更新代价)会非常大。因此树结构不能满足实时应用程序的要求,在这种情况下,有必要探索一种能够提高大数据索引的时间和空间效率的索引方法。

哈希索引是被普遍采用的索引方法,它有效地克服索引树结构存在数据的插入和更新代价非常大的弊端。哈希索引通过指定的哈希函数将查询请求直接映射到桶内,不经过任何比较,一次存取便可以到达目标数据项。然而哈希索引也有其弱点,即哈希映射的桶个数以及每个桶内的数据量都依赖于哈希函数的选取。在大数据场景下,数据分布和查询的热点分布都存在很明显的倾斜现象,因此哈希索引有严重的桶倾斜现象,即有些桶中被映射了大量的数据而产生溢出现象,而有些桶中的数据很少而耗费了同样多的系统资源。在大数据应用场景下,哈希桶的负载平衡更是一个需要重视和优化的问题。

发明内容

本发明的目的是针对现有技术的不足,而提供一种提高海量数据查询性能的正交多哈希映射索引方法。这种方法兼容多种数据格式、不改变数据的物理存储,对大数据上的哈希索引存在的哈希桶严重不平衡和溢出现象提出正交多哈希的优化策略,从而提高大数据上复杂查询的性能,提高数据的查询效率。

实现本发明的技术方案是:

一种提高海量数据查询性能的正交多哈希映射索引方法,包括如下步骤:

1)在海量数据的查询属性上做第一层哈希映射,所有的数据记录经过第一层哈希函数映射后都被分配到特定的哈希桶中;

2)在第一层哈希的值空间上建立B+树,原线性搜索时间复杂度为O(n),优化为树搜索,树搜索时间复杂度为O(logn),优化对哈希映射值的搜索;

3)通过第二层哈希函数对第一层哈希桶进行再次哈希映射,即把第一层哈希桶进行再次划分,以降低哈希桶内数据容量;

4)在相邻两层哈希桶之间建立指针连接,下一层哈希是对上一层哈希桶的再次划分,多次的正交哈希形成树状的索引层次结构,哈希桶是否再划分取决于哈希桶目前的数据量,当哈希桶个数超过指定的预警阈值后就停止划分,正交多哈希索引建立完成。

正交多哈希方法从多个维度对被索引数据进行哈希映射,挖掘被索引数据不同维度上的特征。例如对于网络日志点击流数据,索引首先用“IP地址”上的哈希函数将海量的被索引数据划分到H1个桶内,H1的取值取决于第一层哈希函数的选取;随后,对第一层哈希函数划分的H1个哈希桶的每个桶,在“开始时间”属性上用第二层哈希函数进行再次哈希,得到第二层哈希映射桶。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于广西师范大学,未经广西师范大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201610019838.4/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top