一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种大数据海量数据秒级查询方法、装置及计算机介质与流程

2022-03-05 09:23:38 来源:中国专利 TAG:
1.本发明涉及计算机
技术领域
:,具体为一种大数据海量数据秒级查询方法、装置及计算机介质。
背景技术
::2.hive是基于hadoop的一个数据仓库工具,用来进行数据提取、转化、加载,这是一种可以存储、查询和分析存储在hadoop中的大规模数据的机制。hive数据仓库工具能将结构化的数据文件映射为一张数据库表,并提供sql查询功能,能将sql语句转变成mapreduce任务来执行;3.在实际的应用中,hive数仓的数据为了提供数据给前端应用服务器使用,是将数据上传到elasticsearch(简称es)中,开发接口的方式为前端应用服务器提供数据;4.但是当遇到目标查询文件字段的信息量很大的时候,就会对前端应用服务器的查询响应造成影响;容易出现对海量数据时,es查询数据较慢,做不到秒级的查询,影响用户的使用感受并且数据都存在es上,增加了es集群的压力,提高了es集群的维护成本。技术实现要素:5.(一)解决的技术问题6.针对现有技术的不足,本发明提供了一种大数据海量数据秒级查询方法、装置及计算机介质,解决了上述
背景技术
:中提出的当遇到目标查询文件字段的信息量很大的时候,就会对前端应用服务器的查询响应造成影响;容易出现对海量数据查询时,es查询数据速度较慢,做不到秒级的查询,影响用户的使用感受并且数据都存在es上,增加了es集群的压力,提高了es集群的维护成本的问题。7.(二)技术方案8.为实现以上目的,本发明通过以下技术方案予以实现:一种大数据海量数据秒级查询方法,所述方法包括:9.识别待查询目标文本的字段中数据量大的字段;10.排除所述的识别出的数据量大的字段,将剩余字段的字段信息存入es中;11.将待查询目标文本的所有字段都存入hbase;12.在hive中创建hive与es、hive与hbase的映射外表;13.通过向hive映射外表加载数据实现将hive数仓数据写入es和hbase;14.根据条件检索数据id,es返回数据id;15.根据id查询hbase中响应的记录;16.返回查询结果。17.优选地,所述存入es的字段同时支持被查询。18.优选地,所述将待查询目标文本的所有字段都存入hbase,同时还需要存储字段中的原始数据信息。19.优选地,所述根据条件检索数据id,es返回数据id;包括:前端应用服务器调用接口进行查询时,先通过es的倒排索引列表检索到查询关键词所述的数据id。20.优选地,所述根据id查询hbase中响应的记录;包括:21.获取searchhits中的id列表,遍历id列表;22.将id作为hbase的rowkey通过hbase的get方法基于rowkey查询出具体的数据信息,获取查询结果的列名和列值,供接口调用。23.本发明还提供一种大数据海量数据秒级查询装置,包括:24.字段识别模块:用于识别待查询目标文本的字段中数据量大的字段;25.字段信息存储模块:用于排除所述的识别出的数据量大的字段,将剩余字段的字段信息存入es中;26.将待查询目标文本的所有字段都存入hbase;27.映射创建模块:用于在hive中创建hive与es、hive与hbase的映射外表;28.数据查询模块:用于通过向hive映射外表加载数据实现将hive数仓数据写入es和hbase;29.根据条件检索数据id,es返回数据id;30.根据id查询hbase中响应的记录;31.返回查询结果。32.本发明还提供一种大数据海量数据秒级查询终端,所述终端包括处理器和存储器,所述存储器中存储有至少一条指令或至少一段程序,所述至少一条指令或所述至少一段程序由所述处理器加载并执行以实现如前任一项所述的一种大数据海量数据秒级查询方法。33.本发明还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被一个或多个处理器执行时实现如前任一项所述的一种大数据海量数据秒级查询方法的步骤。34.有益效果35.本发明提供了一种大数据海量数据秒级查询方法、装置及计算机介质。具备以下有益效果:36.本发明实施例提供的技术方案使用es作为中间存储,在秒级查询的基础上还实现了数据的检索;通过hive映射外表的方式将离线数仓hive和实时数仓hbase进行了整合,扩展了业务;使用rowkey作为hbase的查询方式,避免了全表扫描,提高了查询效率;提高了数据查询的速度,即使海量数据也可以达到秒级,减轻了es集群的压力。附图说明37.图1为本发明提供的一种大数据海量数据秒级查询方法流程图;38.图2为本发明提供的一种大数据海量数据秒级查询装置结构示意图;39.图3为本发明提供的又一种大数据海量数据秒级查询终端结构示意图。具体实施方式40.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。41.为清楚说明本发明技术方案,对相关名词进行如下解释:42.hive:hive是基于hadoop的一个数据仓库工具,用来进行数据提取、转化、加载,这是一种可以存储、查询和分析存储在hadoop中的大规模数据的机制。hive数据仓库工具能将结构化的数据文件映射为一张数据库表,并提供sql查询功能,能将sql语句转变成mapreduce任务来执行。hive的优点是学习成本低,可以通过类似sql语句实现快速mapreduce统计,使mapreduce变得更加简单,而不必开发专门的mapreduce应用程序。hive十分适合对数据仓库进行统计分析;43.es(elasticsearch):是一个基于lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于restfulweb接口。elasticsearch是用java语言开发的,并作为apache许可条款下的开放源码发布,是一种流行的企业级搜索引擎;44.hbase:是一种构建在hdfs之上的分布式、面向列的存储系统,在需要实时读写、随机访问超大规模数据集时,可以使用hbase。45.rowkey:是用来检索记录的主键,访问hbasetable中的行。46.如图1所示,一种大数据海量数据秒级查询方法,所述方法包括:47.s1.识别待查询目标文本的字段中数据量大的字段;48.s2.排除所述的识别出的数据量大的字段,将剩余字段的字段信息存入es中;49.s3.将待查询目标文本的所有字段都存入hbase;50.s4.在hive中创建hive与es、hive与hbase的映射外表;51.s5.通过向hive映射外表加载数据实现将hive数仓数据写入es和hbase;52.s6.根据条件检索数据id,es返回数据id;53.s7.根据id查询hbase中响应的记录;54.s8.返回查询结果。55.优选地,所述存入es的字段同时支持被查询。56.优选地,所述将待查询目标文本的所有字段都存入hbase,同时还需要存储字段中的原始数据信息。57.优选地,所述根据条件检索数据id,es返回数据id;包括:前端应用服务器调用接口进行查询时,先通过es的倒排索引列表检索到查询关键词所述的数据id。58.优选地,所述根据id查询hbase中响应的记录;包括:59.获取searchhits中的id列表,遍历id列表;60.将id作为hbase的rowkey通过hbase的get方法基于rowkey查询出具体的数据信息,获取查询结果的列名和列值,供接口调用。61.以实现基于招标公告文本中的大数据量字段的秒级查询为例,采用es整合hbase实现二级索引的方式进行查询;62.招标公告的主要字段如下:[0063][0064][0065]其中,招标产品概述、招标概要信息、招标文本等字段的数据量是很大的,所以我们排除这些字段将剩下的字段信息存入es中,具体的存储设计如下:[0066][0067][0068]在hive中创建hive和es、hive和hbase的映射外表,然后通过向hive映射外表加载数据来实现hive数仓数据存入es、hbase中;[0069]前端应用服务器调用接口进行查询时,先通过es的倒排索引列表检索到查询关键词所述的数据id;[0070]获取searchhits中的id列表,遍历id列表;[0071]将id作为hbase的rowkey通过hbase的get方法基于rowkey查询出具体的数据信息,获取查询结果的列名和列值,供接口调用。[0072]整个实现方式通过java代码实现,包括数据检索es、数据查询hbase、数据查询接口开发。[0073]如图2所示,本发明还提供一种大数据海量数据秒级查询装置,包括:[0074]字段识别模块:用于识别待查询目标文本的字段中数据量大的字段;[0075]字段信息存储模块:用于排除所述的识别出的数据量大的字段,将剩余字段的字段信息存入es中;[0076]将待查询目标文本的所有字段都存入hbase;[0077]映射创建模块:用于在hive中创建hive与es、hive与hbase的映射外表;[0078]数据查询模块:用于通过向hive映射外表加载数据实现将hive数仓数据写入es和hbase;[0079]根据条件检索数据id,es返回数据id;[0080]根据id查询hbase中响应的记录;[0081]返回查询结果。[0082]如图3所示,本发明还提供一种大数据海量数据秒级查询终端,所述终端包括处理器和存储器,所述存储器中存储有至少一条指令或至少一段程序,所述至少一条指令或所述至少一段程序由所述处理器加载并执行以实现如前任一项所述的一种大数据海量数据秒级查询方法。[0083]本发明还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被一个或多个处理器执行时实现如前任一项所述的一种大数据海量数据秒级查询方法的步骤。[0084]综上所述,本发明实施例提供的技术方案使用es作为中间存储,在秒级查询的基础上还实现了数据的检索;通过hive映射外表的方式将离线数仓hive和实时数仓hbase进行了整合,扩展了业务;使用rowkey作为hbase的查询方式,避免了全表扫描,提高了查询效率;提高了数据查询的速度,即使海量数据也可以达到秒级,减轻了es集群的压力。[0085]尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。当前第1页12当前第1页12
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献