[发明专利]一种基于索引二叉树的查询方法和系统在审
| 申请号: | 201611234853.7 | 申请日: | 2016-12-28 |
| 公开(公告)号: | CN106777260A | 公开(公告)日: | 2017-05-31 |
| 发明(设计)人: | 胡养成;胡永全;张利;马伟;鲍龙飞;余斌 | 申请(专利权)人: | 安徽云未科技有限公司 |
| 主分类号: | G06F17/30 | 分类号: | G06F17/30 |
| 代理公司: | 合肥市长远专利代理事务所(普通合伙)34119 | 代理人: | 刘勇,金宇平 |
| 地址: | 230000 安徽省合肥市高新区合肥国家*** | 国省代码: | 安徽;34 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 基于 索引 二叉 查询 方法 系统 | ||
技术领域
本发明涉及数据查询技术领域,尤其涉及一种基于索引二叉树的查询方法和系统。
背景技术
随着应用系统的发展与使用,数据量不断增多,查询的速度不断降低,但很多应用系统对查询响应速度要求却越来越高,如:车站、机场等在逃犯的身份证比对查询;高速收费站对逃逸车辆号牌的比对查询等。
目前传统查询方式主要有以下两种:其一是将比对的原始数据源存储到关系型数据库,输入需要确认的身份证号或车辆号牌,直接从数据库中查询是否存在类似记录,这种查询方式最大的缺点是查询速度慢,其二是将所有比对的原始数据源一次性读取到服务器内存中,输入需要确认的身份证号或车辆号牌,直接从内存中进行比对,这种查询方式查询速度有一定提高,但是需要占用大量内存。
发明内容
基于背景技术存在的技术问题,本发明提出了一种基于索引二叉树的查询方法和系统,在少量占用内存的基础上,实现快速查询的功能,提高查询效率。
一种基于索引二叉树的查询方法,其特征在于,包括以下步骤:
S1、根据预设查询字段和目标数据之间的映射关系对目标数据库建立目标数据的索引表,所述目标数据的索引表具有二叉树数据结构;
S2、获取用户输入的查询字段;
S3、将所述用户输入的查询字段与所述目标数据的索引表进行比对,得到目标数据的索引结果并输出。
其中,在S1中,在所述索引表的二叉树数据结构中,每个二叉树节点包括本节点、左子树、右子树;本节点用于存储单个节点的数据;左子树用于存储上一级节点的数据节点;右子树用于存储本节点所有子节点的数据节点集合。
其中,在S3中,将所述用户输入的查询字段与所述目标数据的索引表进行比对,具体为:
根据用户输入的查询字段,将查询字段按照单个字节转换成数组;
取出数组中第一个字节,在索引表的二叉树数据结构中第一层检索到对应的节点;
取出数组中第二个字节,从上一节点中的右子树中检索到对应的节点;
依次类推,直到检索到数组的最后一个字节为止。
优选地,在S2中,得到目标数据的索引结果之后还包括:根据目标数据的索引结果,从目标数据库中提取与所述索引结果相对应的数据信息并输出所述数据信息;
优选地,在S1中,建立目标数据的索引表之后还包括:将所述目标数据的索引表存储在内存中;
优选地,在S3中,得到目标数据的索引结果并输出之后还包括:将目标数据的索引结果存储在内存中。
一种基于索引二叉树的查询系统,其特征在于,包括:
索引表生成模块,用于根据预设查询字段和目标数据之间的映射关系对目标数据库建立目标数据的索引表,所述目标数据的索引表具有二叉树数据结构;
数据采集模块,用于采集用户输入的查询字段数据;
查询比对模块,将所述用户输入的查询字段与所述目标数据的索引表进行比对,得到目标数据的索引结果;
其中,所述的索引表生成模块具体用于:在索引表的二叉树数据结构中,每个二叉树节点包括本节点、左子树、右子树;本节点用于存储单个节点的数据;左子树用于存储上一级节点的数据节点;右子树用于存储本节点所有子节点的数据节点集合;
优选地,所述目标数据的索引表存储在内存中。
其中,所述查询比对模块,具体用于:根据用户输入的查询字段,将查询字段按照单个字节转换成数组;取出数组中第一个字节,在索引表的二叉树数据结构中第一层检索到对应的节点;取出数组中第二个字节,从上一节点中的右子树中检索到对应的节点;依次类推,直到检索到数组的最后一个字节为止;如此,完成比对,得到目标数据的索引结果;
优选地,所述目标数据的索引结果存储在内存中。
优选地,还包括提取模块,用于:根据得到的目标数据的索引结果,从目标数据库中提取与所述索引结果相对应的数据信息;
优选地,还包括输出模块,用于:输出得到的目标数据的索引结果;
优选地,所述的输出模块还用于:输出从目标数据库中提取与所述索引结果相对应的数据信息。
本发明中,通过预设查询字段和目标数据之间的映射关系对目标数据库建立目标数据的二叉树结构的索引表,获取用户输入的查询字段数据,与所述的索引表进行比对,根据比对结果,快速得到目标索引,进一步从数据库中提取与所述目标索引对应的详细数据信息,由此,在有大量数据时,以少量的内存占用,进行快速查询,提高查询效率。
附图说明
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于安徽云未科技有限公司,未经安徽云未科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201611234853.7/2.html,转载请声明来源钻瓜专利网。





