[发明专利]云环境下可扩展存储索引结构的构建和查询方法有效

专利信息
申请号: 201610944106.6 申请日: 2016-10-26
公开(公告)号: CN106503196B 公开(公告)日: 2019-05-03
发明(设计)人: 周维;刘建坤;罗静;姚绍文;张浩 申请(专利权)人: 云南大学
主分类号: G06F16/22 分类号: G06F16/22;G06F16/245
代理公司: 成都行之专利代理事务所(普通合伙) 51220 代理人: 温利平;陈靓靓
地址: 650091*** 国省代码: 云南;53
权利要求书: 查看更多 说明书: 查看更多
摘要: 发明公开了一种云环境下可扩展存储索引结构的构建和查询方法,首先建立KD树索引结构,在建立KD树时依次采用每个索引维的数据作为层结点的划分标准,将构建得到的KD树中各个叶子结点数据集的索引数据存储在HBase中,并对整个数据集建立其Bloom Filter结构并存储;在单健值查询时,先通过Bloom Filter结构检测数据是否存在,然后再根据KD树进行精确查询;在范围查询时,确定查询范围对应的子树,然后根据子树下的叶子节点进行精确查询。本发明利用KD树这种数据结构并结合HBase来有针对性地构建云环境下可扩展存储索引结构,利用KD树将各维度在一定范围内的数据子集映射到一起,实现多维范围的查询。
搜索关键词: 环境 扩展 存储 索引 结构 构建 查询 方法
【主权项】:
1.一种云环境下可扩展存储索引结构的构建和查询方法,其特征在于,包括以下步骤:S1:记数据集中每个数据为Xi=(xi1,xi2,…xij,…,xiL),其中i=1,2,…,N,j=1,2,…,L,其中N表示数据集中数据数量,L表示数据维数,根据需要从L维数据中选择M维数据作为索引维,然后根据以下方法构建KD树:S1.1:令层数d=1,根据数据集中每个数据的第1维索引维数据,筛选得到其中位数,将该中位数所对应的数据作为根结点;S1.2:令d=d+1;S1.3:如果d<D,D表示预设的KD树的深度,进入步骤S1.4,否则KD树构建完成;S1.4:计算Ad=d%M,%表示取余;S1.5:对于第d‑1层中的每个结点,从数据集获取该结点对应的左子集和右子集范围内的所有数据,对于左子集,根据每个数据的第Ad维索引维数据,筛选得到其中位数,将该中位数所对应的数据作为左子集的根结点;对于右子集,根据每个数据的第Ad维索引维数据,筛选得到其中位数,将该中位数所对应的数据作为右子集的根结点;返回步骤S1.2;S2:获取步骤S1中构建得到的KD树中各个叶子结点数据集并存储,将叶子结点对应的范围信息作为RowKey,将叶子结点数据集中所有数据存储指针构成的数组作为Value值,将索引数据存储在HBase中;S3:对整个数据集建立其Bloom Filter结构并存储;S4:在单健值查询时,采用以下方法:通过数据集的Bloom Filter结构检测所查询数据是否存在,如果未检测到数据存在,则报告数据不存在,如果存在,则根据KD树的路由定位到数据所在的叶子结点的Key值,然后根据Key值提取到对应的数据集,再进行精确查询,提取数据并返回或报告数据不存在;S5:在范围查询时,采用以下方法:根据KD树对数据在所选维度上的划分,确定查询范围对应的子树;获取该子树下所有叶子结点对应的Key值,如果要查询的结果是Value中已经预先计算好的函数值,则直接从对应Value中提取数据并返回,如果不是预先计算的函数值,则通过HBase提取得到所有Key值对应的数据,根据范围查询条件筛选出相应数据,然后计算得到函数值后返回结果。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

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

本文链接:http://www.vipzhuanli.com/patent/201610944106.6/,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

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

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

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

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

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

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

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

钻瓜专利网在线咨询

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

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