一种数据库查询方法、装置、电子设备及存储介质制造方法及图纸

技术编号:22364022 阅读:36 留言:0更新日期:2019-10-23 04:40
本公开披露了一种数据库查询方法、装置、电子设备及存储介质,所述方法包括:基于当前SQL查询语句的key值,获取多个目标数据库的历史资源消耗序列;针对所述多个目标数据库中的每个目标数据库,根据所述历史资源消耗序列确定各个所述目标数据库的资源消耗预测模型;根据所述资源消耗预测模型确定所述当前SQL查询语句在各个所述目标数据库的预估资源消耗;基于各个所述目标数据库的所述预估资源消耗,确定对所述当前SQL查询语句的任务分配策略;按照所述任务分配策略进行至少一个查询子任务的调度。

【技术实现步骤摘要】
一种数据库查询方法、装置、电子设备及存储介质
本公开涉及数据库领域,具体涉及一种分布式数据库查询过程中防止数据倾斜的数据库查询方法、装置、电子设备及存储介质。
技术介绍
随着云计算等相关行业的快速发展,互联网行业面临着爆炸式增长的海量数据和更多的数据处理需求。为了更好的处理这种状况,一些新技术快速随之产生,比如并行数据库、分布式处理等。MapReduce就是一个处理海量数据的计算框架。Hadoop是一个基于MapReduce框架的分布式数据处理系统,有计算能力强、容错性和数据可用性强、可扩展性强等特性。然而,这种传统的MapReduce框架和Hadoop系统不擅长处理结构化数据,比如SQL(StructuredQueryLanguage,结构化查询语言)查询,而且对于特定问题的处理需要用户进一步编程解决,不存在针对某种问题的特定接口,还存在着启动时间长、处理延时较高,不能支持一些实时的查询的问题。针对以上问题,已经有了多种对MapReduce框架的优化和补充,使得MapReduce适用于处理结构化的数据,比如SQL查询等特定应用。SQL查询是数据库领域的重要应用,由此形成的Hive是本文档来自技高网...

【技术保护点】
1.一种数据库查询方法,其特征在于,包括:基于当前SQL查询语句的key值,获取多个目标数据库的历史资源消耗序列;针对所述多个目标数据库中的每个目标数据库,根据所述历史资源消耗序列确定各个所述目标数据库的资源消耗预测模型;根据所述资源消耗预测模型确定所述当前SQL查询语句在各个所述目标数据库的预估资源消耗;基于各个所述目标数据库的所述预估资源消耗,确定对所述当前SQL查询语句的任务分配策略;按照所述任务分配策略进行至少一个查询子任务的调度。

【技术特征摘要】
1.一种数据库查询方法,其特征在于,包括:基于当前SQL查询语句的key值,获取多个目标数据库的历史资源消耗序列;针对所述多个目标数据库中的每个目标数据库,根据所述历史资源消耗序列确定各个所述目标数据库的资源消耗预测模型;根据所述资源消耗预测模型确定所述当前SQL查询语句在各个所述目标数据库的预估资源消耗;基于各个所述目标数据库的所述预估资源消耗,确定对所述当前SQL查询语句的任务分配策略;按照所述任务分配策略进行至少一个查询子任务的调度。2.如权利要求1所述的方法,其特征在于,所述根据所述历史资源消耗序列确定各个所述目标数据库的资源消耗预测模型包括:确定各个所述目标数据库的所述历史资源消耗序列的自相关函数值和偏自相关函数值;基于所述自相关函数值和所述偏自相关函数值建立关于资源消耗的差分整合移动平均自回归模型。3.如权利要求2所述的方法,其特征在于,在建立关于资源消耗的差分整合移动平均自回归模型之前,所述方法还包括:确定所述自相关函数值和所述偏自相关函数值是否需要差分转换;在所述自相关函数值和所述偏自相关函数值需要进行差分转换时,通过至少一次差分转换,使所述自相关函数值和所述偏自相关函数值平稳。4.如权利要求1所述的方法,其特征在于,所述确定对当前SQL查询语句的任务分配策略包括:基于各个所述多个目标数据库的所述预估资源消耗,确定数据倾斜原因;基于所述数据倾斜原因,确定对所述当前SQL查询语句的任务分配策略。5.如权利要求1-4中任一所述的方法,其特征在于,所述资源消耗为执行时间、占用内存、I/O吞吐量、访问数据量中的至少一个。6.一种数据库查询装置,其特征在于,包括:获取模块,用于基于当前SQL查询语句的key值,获取多个目标数据库的历史资源消耗序列;预测模型确定模块,用于针对多个目标数据库中的每个目标数据库,根据所述历史资源消耗序列确定各个所述目标数据库的资源消耗预测模型;资源消耗...

【专利技术属性】
技术研发人员:郑为锋
申请(专利权)人:拉卡拉支付股份有限公司
类型:发明
国别省市:北京,11

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

1