数据存储查询方法、装置、计算机设备及存储介质制造方法及图纸

技术编号:23099206 阅读:18 留言:0更新日期:2020-01-14 20:37
本发明专利技术涉及数据存储查询方法、装置、计算机设备及存储介质,该方法包括获取需存储的数据;暂存需存储的数据至kafka队列服务器,以得到暂存数据;采用spark streaming消费暂存数据,以得到中间数据;获取中间数据在HBase表内的真正HRegion位置,以得到存储位置;将中间数据写入存储位置内,以得到写入结果;根据写入结果建立二级索引;反馈二级索引以及写入结果;获取查询请求;根据查询请求获取查询结果;反馈查询结果。本发明专利技术实现针对大文件数据的写入时,不影响写入性能,在进行查询时,查询效率高,且有效满足真实场景中复杂多样的业务存储查询需求。

Data storage query method, device, computer equipment and storage medium

【技术实现步骤摘要】
数据存储查询方法、装置、计算机设备及存储介质
本专利技术涉及智慧城市数据处理方法,更具体地说是指数据存储查询方法、装置、计算机设备及存储介质。
技术介绍
随着智慧城市的快速发展,视频、图片和文本等基础数据采集手段被广泛应用,引发了短时间内生产的海量视频、图片和文本数据无法快速存储和处理,从而严重影响数据时效性价值问题。如何快速高效的分析数据带来的价值,首先需要解决的问题是如何高效的存储,然后是如何快速的查询。传统的数据管理、存储无法满足需求,现有的HDFS(分布式文件系统,HadoopDistributedFileSystem)是为处理大文件而量身定做,若直接用来存储小文件,则会由于元数据膨胀,在扩展性和性能方面均存在严重问题。HBase(分布式存储系统,HadoopDatabase)是基于HDFS的海量非结构化数据存储技术,具有很好的线性扩展能力,可被用来存储海量小文件,并具有系统层小文件合并、全局名字空间等多种优势,然而在实际应用中,存在着性能和延时问题,总的来说,主要表现在如下几个方面:存储含有大量大文件数据时,由于HRegion的分裂和合并操作触发过于频繁,严重影响数据的写入性能;根据非主键进行查询时,只能通过扫描全表或者使用MapReduce框架扫描全表获得想要的数据,无法满足实时查询需求,查询效率低下。因此,有必要设计一种新的方法,实现针对大文件数据的写入时,不影响写入性能,在进行查询时,查询效率高,且有效满足真实场景中复杂多样的业务存储查询需求。
技术实现思路
本专利技术的目的在于克服现有技术的缺陷,提供数据存储查询方法、装置、计算机设备及存储介质。为实现上述目的,本专利技术采用以下技术方案:数据存储查询方法,包括:获取需存储的数据;暂存需存储的数据至kafka队列服务器,以得到暂存数据;采用sparkstreaming消费暂存数据,以得到中间数据;获取中间数据在HBase表内的真正HRegion位置,以得到存储位置;将中间数据写入存储位置内,以得到写入结果;根据写入结果建立二级索引;反馈所述二级索引以及写入结果;获取查询请求;根据查询请求获取查询结果;反馈所述查询结果。其进一步技术方案为:所述采用sparkstreaming消费暂存数据,以得到中间数据,包括:启动Receiver异步线程从kafka队列服务器内获取暂存数据,以得到初始数据;暂存所述初始数据;将初始数据转移至Executor内以进行处理,得到中间数据。其进一步技术方案为:所述采用sparkstreaming消费暂存数据,以得到中间数据之后,还包括:更新分布式协调服务内的偏移量。其进一步技术方案为:所述获取中间数据在HBase表内的真正HRegion位置,以得到存储位置,包括:根据中间数据从分布式协调服务内调取根表所在的位置;根据根表所在的位置获取对应的元数据表所在的HRegion位置,以得到中间数据在HBase表内的真正HRegion位置。其进一步技术方案为:所述根据写入结果建立二级索引,包括:获取基于HBase的协处理器针对写入结果拓展的二级索引;将二级索引存储于基于ElasticSearch的分布式索引服务器。其进一步技术方案为:所述查询请求是从用户终端生成的查询脚本,且根据该查询脚本在基于ElasticSearch的分布式索引服务器内进行检索所得到要查询的行键。本专利技术还提供了数据存储查询装置,包括:数据获取单元,用于获取需存储的数据;第一暂存单元,用于暂存需存储的数据至kafka队列服务器,以得到暂存数据;消费单元,用于采用sparkstreaming消费暂存数据,以得到中间数据;存储位置获取单元,用于获取中间数据在HBase表内的真正HRegion位置,以得到存储位置;写入结果获取单元,用于将中间数据写入存储位置内,以得到写入结果;二级索引建立单元,用于根据写入结果建立二级索引;第一反馈单元,用于反馈所述二级索引以及写入结果;查询请求获取单元,用于获取查询请求;查询结果形成单元,用于根据查询请求获取查询结果;第二反馈单元,用于反馈所述查询结果。其进一步技术方案为:所述消费单元包括:初始数据获取子单元,用于启动Receiver异步线程从kafka队列服务器内获取暂存数据,以得到初始数据;初始数据暂存子单元,用于暂存所述初始数据;处理子单元,用于将初始数据转移至Executor内以进行处理,得到中间数据。本专利技术还提供了一种计算机设备,所述计算机设备包括存储器及处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现上述的方法。本专利技术还提供了一种存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时可实现上述的方法。本专利技术与现有技术相比的有益效果是:本专利技术通过针对大文件数据隔离存储在HDFS上,回避了HBase本身的分裂和合并机制,针对设置基于HBase协处理器所拓展的二级索引,采用基于ElasticSearch的分布式索引服务器存储二级索引,支持字段模糊查询和多字段组合查询,极大地提升了非主键查询性能和灵活性,实现针对大文件数据的写入时,不影响写入性能,在进行查询时,查询效率高,且有效满足真实场景中复杂多样的业务存储查询需求。下面结合附图和具体实施例对本专利技术作进一步描述。附图说明为了更清楚地说明本专利技术实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术实施例提供的数据存储查询方法的应用场景示意图;图2为本专利技术实施例提供的数据存储查询方法的流程示意图;图3为本专利技术实施例提供的数据存储查询方法的子流程示意图;图4为本专利技术实施例提供的数据存储查询方法的子流程示意图;图5为本专利技术实施例提供的数据存储查询方法的子流程示意图;图6为本专利技术实施例提供的二级索引的示意图;图7为本专利技术实施例提供的刷新机制的流程示意图;图8为本专利技术实施例提供的HBase存储架构示意图;图9为本专利技术实施例提供的数据存储查询装置的示意性框图;图10为本专利技术实施例提供的计算机设备的示意性框图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“本文档来自技高网...

【技术保护点】
1.数据存储查询方法,其特征在于,包括:/n获取需存储的数据;/n暂存需存储的数据至kafka队列服务器,以得到暂存数据;/n采用spark streaming消费暂存数据,以得到中间数据;/n获取中间数据在HBase表内的真正HRegion位置,以得到存储位置;/n将中间数据写入存储位置内,以得到写入结果;/n根据写入结果建立二级索引;/n反馈所述二级索引以及写入结果;/n获取查询请求;/n根据查询请求获取查询结果;/n反馈所述查询结果。/n

【技术特征摘要】
1.数据存储查询方法,其特征在于,包括:
获取需存储的数据;
暂存需存储的数据至kafka队列服务器,以得到暂存数据;
采用sparkstreaming消费暂存数据,以得到中间数据;
获取中间数据在HBase表内的真正HRegion位置,以得到存储位置;
将中间数据写入存储位置内,以得到写入结果;
根据写入结果建立二级索引;
反馈所述二级索引以及写入结果;
获取查询请求;
根据查询请求获取查询结果;
反馈所述查询结果。


2.根据权利要求1所述的数据存储查询方法,其特征在于,所述采用sparkstreaming消费暂存数据,以得到中间数据,包括:
启动Receiver异步线程从kafka队列服务器内获取暂存数据,以得到初始数据;
暂存所述初始数据;
将初始数据转移至Executor内以进行处理,得到中间数据。


3.根据权利要求1所述的数据存储查询方法,其特征在于,所述采用sparkstreaming消费暂存数据,以得到中间数据之后,还包括:
更新分布式协调服务内的偏移量。


4.根据权利要求1至3任一项所述的数据存储查询方法,其特征在于,所述获取中间数据在HBase表内的真正HRegion位置,以得到存储位置,包括:
根据中间数据从分布式协调服务内调取根表所在的位置;
根据根表所在的位置获取对应的元数据表所在的HRegion位置,以得到中间数据在HBase表内的真正HRegion位置。


5.根据权利要求1所述的数据存储查询方法,其特征在于,所述根据写入结果建立二级索引,包括:
获取基于HBase的协处理器针对写入结果拓展的二级索引;
将二级索引存储于基于ElasticSearch的分布式索引服务...

【专利技术属性】
技术研发人员:谷国栋耿伟周起如王英明胡进贤
申请(专利权)人:深圳市赛为智能股份有限公司
类型:发明
国别省市:广东;44

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

1