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

技术编号:22688813 阅读:19 留言:0更新日期:2019-11-30 03:30
本发明专利技术公开了数据查询处理方法、电子装置、计算机设备及存储介质,方法包括:接收用户将查询请求;基于数据仓库工具,对所述查询请求进行转换,得到对应的MapReduce任务;基于所述MapReduce任务,设置映射函数和归约函数;基于所述映射函数和归约函数,获取查询结果。应用本发明专利技术实施例提供的数据查询处理方法、电子装置、计算机设备及存储介质,能够解决现有技术中无法有效运行的hive进行数据处理的问题。

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

The invention discloses a data query processing method, an electronic device, a computer device and a storage medium, the method comprises: receiving a user's query request; transforming the query request based on the data warehouse tool to obtain a corresponding MapReduce task; setting a mapping function and a reduction function based on the MapReduce task; obtaining a mapping function and a reduction function based on the mapping function and a reduction function Query results. Applying the data query processing method, electronic device, computer equipment and storage medium provided by the embodiment of the invention can solve the problem of data processing for hive which cannot be effectively operated in the prior art.

【技术实现步骤摘要】
数据查询处理方法、电子装置、计算机设备及存储介质
本专利技术涉及Hadoop平台的数据查询
,尤其涉及一种数据查询处理方法、电子装置、计算机设备及存储介质。
技术介绍
Hadoop平台是由Apache基金会基于MapReduce并行处理模型而实现的开源软件平台,具有良好的可扩展性,可以被简单、快速地部署在由数十乃至上千台计算机所组成的集群平台上,以便以批量形式对海量数据进行高效的并行处理。MapReduce是面向大数据并行处理的计算模型、框架和平台,MapReduce用于把杂乱无章的数据按照某种特征归纳起来,然后处理并得到最后的结果。要求用户按照MapReduce编程范型来编写相应的处理程序,即可实现对以key-value形式分布存储的数据进行处理的目的。然而,相较于类似SQL这样的数据库查询描述语言,对于缺乏数据库专业背景的普通用户而言,编写数据处理程序的任务依旧复杂,并且对用户之间的沟通与协调造成障碍。hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的sql查询功能,可以将sql语句转换为MapReduce任务进行运行。现有技术中,由于数据服务平台的数据量基本是过十亿,例如金管家、埋点、talkingdata、webtrends、ubars数据,并且好多都是没有分区、索引、主键等,经常查询一个数据要几个小时或者根本无法查询、运行脚本慢,这就导致了无法有效的通过hive进行数据的优化处理。因此,提供一种有效的基于hive任务进行大批量的数据优化处理是亟待解决的技术问题。
技术实现思路
有鉴于此,本专利技术提出一种数据查询处理方法、电子装置、计算机设备及存储介质,旨在解决现有技术中无法有效的基于hive任务进行大批量的数据处理的问题。首先,为实现上述目的,本专利技术提出一种数据查询处理方法,所述方法包括步骤:接收用户将查询请求;基于数据仓库工具,对所述查询请求进行转换,得到对应的MapReduce任务;基于所述MapReduce任务,设置映射函数和归约函数;基于所述映射函数和归约函数,获取查询结果。进一步地,所述基于数据仓库工具,对所述查询请求进行转换,得到对应的MapReduce任务的步骤,包括:获取数据仓库工具在数据库集群对应的分区描述信息;根据所述查询请求、所述数据仓库工具和所述分区描述信息生成MapReduce任务。进一步地,所述基于所述映射函数和归约函数,获取查询结果的步骤,包括:分别为每个分区表分配一个映射函数,获得第一查询结果;将所述第一查询结果反馈至所述归约函数,通过所述第一查询结果得到第二查询结果;将所述第二查询结果确定为与所述查询请求对应的查询结果。进一步地,所述分别为每个分区表分配一个映射函数,获得第一查询结果的步骤,包括:分别为每个分区分配一个映射函数;根据设置的执行参数和时间参数,执行所述映射函数,获得第一查询结果。进一步地,所述分别为每个分区分配一个映射函数的步骤,包括:根据所述分区和数据库集群在Hadoop中的输入格式,将所述数据库集群的各个分区表转换为各自对应的输入分片;对于每个所述输入分片,启动预先分配的映射函数执行相应分区的查询。进一步地,所述分别为每个分区表分配一个映射函数,获得第一查询结果的步骤,包括:对于每个映射函数,根据该分区表所对应的查询条件生成分区查询语句;通过所述分区查询语句在所述分区表对应的输入分片中读取数据作为第一查询结果。进一步地,所述根据设置的执行参数和时间参数,执行所述映射函数,获得第一查询结果的步骤,包括:根据历史执行日志计算MapReduce作业的执行时间长度均值和映射函数的均值;基于所述时间长度均值和所述映射函数的均值,设置执行参数和时间参数;根据所设置的执行参数和时间参数,执行所述映射函数,获得第一查询结果。此外,为实现上述目的,本专利技术还提供一种电子装置,所述装置包括:接收模块,用于接收用户将查询请求;转换模块,用于基于数据仓库工具,对所述查询请求进行转换,得到对应的MapReduce任务;设置模块,用于基于所述MapReduce任务,设置映射函数和归约函数;查询模块,用于基于所述映射函数和归约函数,获取查询结果。进一步地,所述转换模块,包括:获取子模块,用于获取数据仓库工具在数据库集群对应的分区描述信息;生成子模块,用于根据所述查询请求、所述数据仓库工具和所述分区描述信息生成MapReduce任务。进一步地,所述查询模块,包括:分配子模块,用于分别为每个分区表分配一个映射函数,获得第一查询结果;反馈子模块,用于将所述第一查询结果反馈至所述归约函数,通过所述第一查询结果得到第二查询结果;确定子模块,用于将所述第二查询结果确定为与所述查询请求对应的查询结果。进一步地,还包括分配子模块,包括:分配单元,用于分别为每个分区分配一个映射函数;执行单元,用于根据设置的执行参数和时间参数,执行所述映射函数,获得第一查询结果。进一步地,所述分配单元具体用于:根据所述分区和数据库集群在Hadoop中的输入格式,将所述数据库集群的各个分区表转换为各自对应的输入分片;对于每个所述输入分片,启动预先分配的映射函数执行相应分区的查询。进一步地,所述分配子模块,用于:对于每个映射函数,根据该分区表所对应的查询条件生成分区查询语句;通过所述分区查询语句在所述分区表对应的输入分片中读取数据作为第一查询结果。进一步地,所述执行单元,用于:根据历史执行日志计算MapReduce作业的执行时间长度均值,和映射函数的均值;基于所述时间长度均值和所述映射函数的均值,设置的执行参数和时间参数;根据设置的执行参数和时间参数,执行所述映射函数,获得第一查询结果。此外,为实现上述目的,本专利技术还提供一种设备,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现任一项所述数据查询处理方法的步骤。此外,为实现上述目的,本专利技术还提供一种存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现任一项所述数据查询处理方法的步骤。相较于现有技术,本专利技术所提出的数据查询处理方法、装置、设备及存储介质,通过接收用户将查询请求;然后通过基于数据仓库工具hive,对所述查询请求进行转换,得到对应的MapReduce任务;设置映射函数和归约函数,然后通过映射函数Map,用来把一组键值对映射成一组新的键值对,指定并发的归约函数Reduce,用来保证所有映射的键值对中的每一个共享相同的键组,获取查询结果。通过对每一个用户请求都进行转化得到MapReduce任务,然后基于MapReduce任务重新设置映射函数和归约函数,从而实现了对数据库中没有分本文档来自技高网
...

【技术保护点】
1.一种数据查询处理方法,其特征在于,所述方法包括步骤:/n接收用户的查询请求;/n基于数据仓库工具,对所述查询请求进行转换,得到对应的MapReduce任务;/n基于所述MapReduce任务,设置映射函数和归约函数;/n基于所述映射函数和归约函数,获取查询结果。/n

【技术特征摘要】
1.一种数据查询处理方法,其特征在于,所述方法包括步骤:
接收用户的查询请求;
基于数据仓库工具,对所述查询请求进行转换,得到对应的MapReduce任务;
基于所述MapReduce任务,设置映射函数和归约函数;
基于所述映射函数和归约函数,获取查询结果。


2.根据权利要求1所述的一种数据查询处理方法,其特征在于,所述基于数据仓库工具,对所述查询请求进行转换,得到对应的MapReduce任务的步骤,包括:
获取数据仓库工具在数据库集群对应的分区描述信息;
根据所述查询请求、所述数据仓库工具和所述分区描述信息生成MapReduce任务。


3.根据权利要求1所述的一种数据查询处理方法,其特征在于,所述基于所述映射函数和归约函数,获取查询结果的步骤,包括:
分别为每个分区表分配一个映射函数,获得第一查询结果;
将所述第一查询结果反馈至所述归约函数,通过所述第一查询结果得到第二查询结果;
将所述第二查询结果确定为与所述查询请求对应的查询结果。


4.根据权利要求3所述的一种数据查询处理方法,其特征在于,所述分别为每个分区表分配一个映射函数,获得第一查询结果的步骤,包括:
分别为每个分区分配一个映射函数;
根据设置的执行参数和时间参数,执行所述映射函数,获得第一查询结果。


5.根据权利要求4所述的一种数据查询处理方法,其特征在于,所述分别为每个分区分配一个映射函数的步骤,包括:
根据所述分区和数据库集群在Hadoop中的输入格式,将所述数据库集群的各个分区表转换为各自对应的输入分片;
对于每个所述输入分片,启动预先分配的映射函...

【专利技术属性】
技术研发人员:刘行行
申请(专利权)人:中国平安人寿保险股份有限公司
类型:发明
国别省市:广东;44

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

1
相关领域技术
  • 暂无相关专利