[发明专利]一种基于HBase实现模糊查询的方法有效
申请号: | 201710699170.7 | 申请日: | 2017-08-16 |
公开(公告)号: | CN107291964B | 公开(公告)日: | 2019-11-15 |
发明(设计)人: | 赵万亮;姜思远;王月铭 | 申请(专利权)人: | 南京华飞数据技术有限公司 |
主分类号: | G06F16/2458 | 分类号: | G06F16/2458;G06F16/22 |
代理公司: | 32310 南京品智知识产权代理事务所(普通合伙) | 代理人: | 奚晓宁;杨陈庆<国际申请>=<国际公布> |
地址: | 210019江苏省南京市建邺*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 hbase 实现 模糊 查询 方法 | ||
1.一种基于HBase实现全模糊查询的方法,其特征在于,所述方法包括如下步骤:
1)数据存储;
1-1)输入数据通过数据存储流程模块将需要支持查询的字段的索引数据写入到HBase;
1-2)将需要模糊查询的字段通过环形切词后的索引数据写入到HBase;同时,将步骤1-1)所述输入数据存储到Hdfs中;
步骤1-2)中所述环形切词,用于将模糊查询字段数据,切分成多条索引数据,以实现模糊查询时的多种可能;环形切词的切词符号采用\0;
2)提交查询请求;
由查询客户端将用户的查询请求提交给查询服务端;所述查询请求为用户通过输入设备输入的输入查询语句;
3)解析请求;
查询服务端处理由步骤2)中查询客户端提交的查询请求,解析查询语句并执行查询,最终返回查询结果至查询客户端。
2.根据权利要求1所述的基于HBase实现全模糊查询的方法,其特征在于:步骤1-1)中所述索引数据为需要支持查询字段的相关数据,用于查询;所述输入数据为需要存储到数据库的数据。
3.根据权利要求1所述的基于HBase实现全模糊查询的方法,其特征在于:在所述HBase中只存储索引字段信息、过滤字段以及输入存储的文件信息。
4.根据权利要求3所述的基于HBase实现全模糊查询的方法,其特征在于:所述文件信息用于记录索引数据对应的输入数据存储信息。
5.根据权利要求1所述的基于HBase实现全模糊查询的方法,其特征在于,数据存储流程模块将数据存储到HBase数据库,具体的存储过程包括如下步骤:
a)输入数据放到配置的指定目录,通过扫描程序模块扫描解析,获取表信息及相应的字段信息,并过滤掉错误数据;
b)判断是否存在需要查询的字段:若没有需要查询的字段,则将输入数据按照自定义文件格式写入到Hdfs;
c)若有需要查询的字段,输入数据按照自定义文件格式写入到Hdfs;判断需要支持查询字段的查询类型是精确查询还是模糊查询;
c-1)若是精确查询,则将该查询字段数据直接写入到HBase中对应Htable,表名为索引字段名,Rowkey值为索引字段+时间戳,列族cf至少两列,第一列存储过滤盒子,第二列存储文件信息;
其他列是存储稀疏列,列名是字段名和标签值,列值为空;
c-2)若是模糊查询,则将该查询字段进行数据环形切词,并写入HBase数据库;
所述过滤盒子,是一个固定长度的字节数组,保存筛选字段,统计字段,每个字段根据配置的移量和长度,存储在字节数组中,如果字段是数值类型,长度只能是1,2,4,8。
6.根据权利要求1所述的基于HBase实现全模糊查询的方法,其特征在于,查询服务端解析查询语句并执行查询的具体步骤如下:
J-1)查询服务端接收查询请求,在没有请求提交异常的情况下,解析查询请求中的SQL查询语句,并整理出SQL查询语句对应的查询树和各子查询条件对应的CF树,以及过滤树,然后保存解析的结果;
J-2)判断步骤J-1)解析的结果中是否有查询条件,如果有查询条件,进入步骤J-3);如果没有查询条件,即全表查询,直接读取Hdfs上存储的原始输入数据,有指定返回条数,即读取指定条数数据,将查询结果返回到客户端,查询结束;若没有指定返回条数,则返回默认返回条数的查询结果到客户端,查询结束;
J-3)根据保存的SQL查询语句解析结果,查询HBase;判断是否有查询结果,如果查询到索引数据及可获取对应文件信息,从Hdfs上读取存储的原始输入数据,有指定返回条数,即读取指定条数数据;若没有指定返回条数,则返回默认条数的查询结果,将查询结果返回给客户端,查询结束;如果没有查询结果,则直接返回查询信息给客户端,提示没有数据,查询结束。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京华飞数据技术有限公司,未经南京华飞数据技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710699170.7/1.html,转载请声明来源钻瓜专利网。