[发明专利]一种用于海量多维数值数据范围查询的索引方法在审
申请号: | 201711458769.8 | 申请日: | 2017-12-28 |
公开(公告)号: | CN108182242A | 公开(公告)日: | 2018-06-19 |
发明(设计)人: | 胡玉涵;秦拯;李文杰;彭鹏;尹辉 | 申请(专利权)人: | 湖南大学 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 410082 湖南省*** | 国省代码: | 湖南;43 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 多维 多维索引 数值数据 查询请求 查询 索引 查询结果返回 存储数据信息 分布式数据库 多维数据集 查询类型 查询路径 查询数据 查询条件 范围查询 高效处理 接收用户 冗余路径 数据结构 数据维度 叶子节点 用户需求 查询树 父节点 根节点 最优化 构建 维度 存储 发送 递增 | ||
1.一种用于海量多维数值数据范围查询的索引方法,其特征在于,包括以下步骤:
根据待查询的数据维度信息,为存储在分布式数据库中的多维数值数据集构建多维索引。
接收用户发送的查询请求,包括数据的查询维度和各个维度的值。根据所述查询请求的不同,在预先构建的多维索引结构中查询数据的分布式存储信息,所述索引方法支持多维布尔查询、多维点查询、多维范围查询。
当查询到符合所述查询请求的数据后,将不同查询类型的查询结果返回用户。
2.根据权利要求1所述的一种用于海量多维数值数据查询的索引方法,其特征在于,构建的多维索引具体包括:
1)是一棵多维有序查询树,每层表示一个数据维度,从根节点开始,具有相同父节点的边按从左至右递增排列。
2)查询路径唯一,即如果查询条件存在,则有且只有一条路径与之对应
3)树的深度与数据的维度唯一相关,树中不存在冗余路径。
4)树的叶子节点存储数据信息,节点数量达到最优。
3.根据权利要求1所述的一种用于海量多维数值数据查询的索引方法,其特征在于,所述为存储在分布式数据库中的多维数值数据集构建多维索引包括以下步骤:
步骤1:新增
从多维数据集中抽取一条多维数据,将每维数据的值转化成表示取值范围的二进制前缀;
若索引树为空,则直接新增,从根节点开始,按维度构建,节点表示维度,节点之间相连的边表示各维度的值;若索引树不为空,则从根节点开始判断下一节点的位置,根据2所述索引结构的特征,与节点相连的边要按从左至右递增的顺序排列,找到符合条件的位置插入节点,并与上一节点连接边,依次循环插入直至叶子节点。
步骤2:合并
通过步骤1可以获得新增了一条新路径的索引树,将新增的这条路径依次与已有路径进行比较,判断是否有能够合并的边,因为各边的值都是前缀形式的,可以通过前缀直接进行合并操作。
若存在可以与新路径合并的边,则将两条路径的可合并的边合并后生成一条新的路径,放在新路径右侧,以此循环,合并所有可以合并的边,并将生成的合并路径依次放在新路径右侧,保证同父节点的边按从左至右递增的顺序排列。
步骤3:去除冗余
经过步骤2后,索引树中新增了一条新路径和若干合并后的新路径,这样必定增多了索引树的节点数量和路径数量,因此步骤3主要是为了去除冗余路径。
步骤2新增的合并路径需要依次与同父节点并排在它左边的路径进行比较,若合并后的路径完全包含被比较的路径,则将被比较的路径是该路径的冗余路径,执行删除操作。
步骤4:
依次循环步骤1、2、3,为多维数据集构建好多维索引。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于湖南大学,未经湖南大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711458769.8/1.html,转载请声明来源钻瓜专利网。