基于HBase大数据的实时全文检索系统及其实现方法技术方案

技术编号:17032801 阅读:498 留言:0更新日期:2018-01-13 19:20
本发明专利技术提供一种基于HBase大数据的实时全文检索系统及其实现方法,系统包括:HBase集群复制模块,与HBase集群同时启动并实时监测是否有slave cluster的RegionServer注册进来,若有则在HBase集群有数据变动时将该数据变动实时同步到已注册进来的RegionServer;索引服务器模块,实现RegionServer的接口以模拟一个slave cluster的RegionServer,包括:调用HBase的ReplicationAdmin接口往HBase集群复制模块注册,告知HBase集群它是slave cluster的RegionServer,要接受HBase集群传输过来的数据,并在接受HBase集群的数据后,对该数据按照搜索引擎的格式进行转换并传输给搜索引擎模块;搜索引擎模块,根据转换后的数据建立全文索引,以实现用户对HBase数据的实时全文检索。能基于Hbase作为数据存储实现高效率、低延时的实时全文检索。

【技术实现步骤摘要】
基于HBase大数据的实时全文检索系统及其实现方法
本专利技术涉及计算机处理
,尤其涉及一种基于HBase大数据的实时全文检索系统及其实现方法。
技术介绍
HBase作为一种NoSQL数据库被越来越多的运用于线上生产环境中存储海量数据。HBase是一种键值(key-value)存储、面向列族的数据库,它能根据需要查询的键值key快速的定位到相应的行。但是很多场景中,用户往往只知道所需查询的value值,而不知道value所对应的key。甚至用户只知道value值中的某一部分,想像搜索引擎一样,能全文检索只包含部分值的所有行数,这个时候HBase往往对这种需求只能去扫描整张表,取出所有行的值,然后看看这个值是否有用户所需要查询的内容,这种办法效率低下,而且随着HBase存储数量越来越大的情况下,延时非常严重,根本不能满足用户的需求。鉴于此,如何基于Hbase作为数据存储实现高效率、低延时的实时全文检索成为目前需要解决的技术问题。
技术实现思路
为解决上述的技术问题,本专利技术提供一种基于HBase大数据的实时全文检索系统及其实现方法,能够基于Hbase作为数据存储实现高效率、低延时的实时全文检索。第一方面,本专利技术提供一种基于HBase大数据的实时全文检索系统,包括:HBase集群复制模块,索引服务器模块和搜索引擎模块;所述HBase集群复制模块,用于与HBase集群同时启动,并实时监测是否有从集群slavecluster的区域服务器RegionServer注册进来,若有,则在HBase集群有数据变动时将所述数据变动实时同步到已注册进来的slavecluster的RegionServer;所述索引服务器模块,用于实现RegionServer的接口以模拟一个slavecluster的RegionServer,包括:调用HBase的ReplicationAdmin接口往所述HBase集群复制模块注册,告知HBase集群它是slavecluster的RegionServer,要接受HBase集群传输过来的数据;并在接受HBase集群的数据后,对所述数据按照搜索引擎的格式进行转换,并将转换后的数据传输给所述搜索引擎模块;所述搜索引擎模块,用于根据所述转换后的数据建立全文索引,以实现用户对HBase数据的实时全文检索。优选地,所述数据变动,包括:在HBase集群的表上删除数据、插入数据、和/或更新数据。优选地,所述索引服务器模块为一个远程过程调用RPC服务器。第二方面,本专利技术提供一种基于上述基于HBase大数据的实时全文检索系统的实现方法,包括:创建索引服务器模块,所述索引服务器模块调用HBase的ReplicationAdmin接口往所述HBase集群复制模块注册,告知HBase集群它是slavecluster的RegionServer,要接受HBase集群传输过来的数据;在HBase集群启动的同时,HBase集群复制模块启动并实时监测是否有slavecluster的RegionServer注册进来,若有,则在HBase集群有数据变动时将所述数据变动实时同步到已注册进来的slavecluster的RegionServer;所述索引服务器模块在接收到HBase集群传输的数据后,对所述数据按照搜索引擎的格式进行转换,并将转换后的数据传输给所述搜索引擎模块;所述搜索引擎模块根据所述转换后的数据建立全文索引,以实现用户对HBase数据的实时全文检索。优选地,在启动HBase集群之前,还包括:修改HBase配置文件,以实现在HBase集群启动的同时启动HBase集群复制模块。优选地,所述数据变动,包括:在HBase集群的表上删除数据、插入数据、和/或更新数据。优选地,所述索引服务器模块为一个远程过程调用RPC服务器,在所述HBase集群复制模块监测到所述索引服务器模块模拟一个slavecluster的RegionServer注册进来且HBase集群有数据变动时,所述HBase集群复制模块通过调用RPC方法replicateLogEntries将所述数据变动实时同步到所述索引服务器模块。优选地,所述HBase集群复制模块实时监测是否有从集群slavecluster的区域服务器RegionServer注册进来,若有,则在HBase集群有数据变动时将所述数据变动实时同步到已注册进来的slavecluster的RegionServer,包括:在用户通过HBase集群的客户端的API接口对HBase集群存储的数据进行数据变动时,HBase集群将所述数据变动的操作记录在HLog日志文件内,所述HBase集群复制模块实时监控所述HLog日志文件内容的变化,在所述HBase集群复制模块监测到所述索引服务器模块模拟一个slavecluster的RegionServer注册进来且所述HLog日志文件内容有数据变动的操作时,将所述数据变动实时同步到所述索引服务器模块。由上述技术方案可知,本专利技术的基于HBase大数据的实时全文检索系统及其实现方法,能够基于Hbase作为数据存储实现高效率、低延时的实时全文检索。附图说明为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些图获得其他的附图。图1是本公开一实施例提供的一种基于HBase大数据的实时全文检索系统的结构示意图;图2是本公开一实施例提供的图1所示的基于HBase大数据的实时全文检索系统的实现方法的流程示意图图3是本公开一实施例提供的图1所示的基于HBase大数据的实时全文检索系统的一种更具体的实现方法的流程示意图。具体实施方式下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。基于本公开中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。图1是本公开一实施例提供的一种基于HBase大数据的实时全文检索系统,如图1所示,本实施例的基于HBase大数据的实时全文检索系统,包括:HBase集群复制模块(HBaseReplication),索引服务器模块(HBaseIndexerServer)和搜索引擎模块(SearchEngine);其中:所述HBase集群复制模块,用于与HBase集群同时启动,并实时监测是否有从集群slavecluster的区域服务器RegionServer注册进来,若有,则在HBase集群有数据变动时将所述数据变动实时同步到已注册进来的slavecluster的RegionServer;所述索引服务器模块,用于实现RegionServer的接口以模拟一个slavecluster的RegionServer,包括:调用HBase的ReplicationAdmin接口往所述HBase集群复制模块注册,告知HBase集群它是slavecluster的RegionServer,要接受HBase集群传输过来的数据;并在接受HBase集群的数据后,对所述数据本文档来自技高网...
基于HBase大数据的实时全文检索系统及其实现方法

【技术保护点】
一种基于HBase大数据的实时全文检索系统,其特征在于,包括:HBase集群复制模块,索引服务器模块和搜索引擎模块;所述HBase集群复制模块,用于与HBase集群同时启动,并实时监测是否有从集群slave cluster的区域服务器RegionServer注册进来,若有,则在HBase集群有数据变动时将所述数据变动实时同步到已注册进来的slave cluster的RegionServer;所述索引服务器模块,用于实现RegionServer的接口以模拟一个slave cluster的RegionServer,包括:调用HBase的ReplicationAdmin接口往所述HBase集群复制模块注册,告知HBase集群它是slave cluster的RegionServer,要接受HBase集群传输过来的数据;并在接受HBase集群的数据后,对所述数据按照搜索引擎的格式进行转换,并将转换后的数据传输给所述搜索引擎模块;所述搜索引擎模块,用于根据所述转换后的数据建立全文索引,以实现用户对HBase数据的实时全文检索。

【技术特征摘要】
1.一种基于HBase大数据的实时全文检索系统,其特征在于,包括:HBase集群复制模块,索引服务器模块和搜索引擎模块;所述HBase集群复制模块,用于与HBase集群同时启动,并实时监测是否有从集群slavecluster的区域服务器RegionServer注册进来,若有,则在HBase集群有数据变动时将所述数据变动实时同步到已注册进来的slavecluster的RegionServer;所述索引服务器模块,用于实现RegionServer的接口以模拟一个slavecluster的RegionServer,包括:调用HBase的ReplicationAdmin接口往所述HBase集群复制模块注册,告知HBase集群它是slavecluster的RegionServer,要接受HBase集群传输过来的数据;并在接受HBase集群的数据后,对所述数据按照搜索引擎的格式进行转换,并将转换后的数据传输给所述搜索引擎模块;所述搜索引擎模块,用于根据所述转换后的数据建立全文索引,以实现用户对HBase数据的实时全文检索。2.根据权利要求1所述的系统,其特征在于,所述数据变动,包括:在HBase集群的表上删除数据、插入数据、和/或更新数据。3.根据权利要求1所述的系统,其特征在于,所述索引服务器模块为一个远程过程调用RPC服务器。4.一种基于权利要求1-3中任一项所述的基于HBase大数据的实时全文检索系统的实现方法,其特征在于,包括:创建索引服务器模块,所述索引服务器模块调用HBase的ReplicationAdmin接口往所述HBase集群复制模块注册,告知HBase集群它是slavecluster的RegionServer,要接受HBase集群传输过来的数据;在HBase集群启动的同时,HBase集群复制模块启动并实时监测是否有slavecluster的RegionServer注册进来,若有,则在HBase集群有数据变动时将所述数据...

【专利技术属性】
技术研发人员:沈国权
申请(专利权)人:滴滴中国科技有限公司
类型:发明
国别省市:天津,12

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1