数据库操作方法、装置、电子设备及存储介质制造方法及图纸

技术编号:20329037 阅读:22 留言:0更新日期:2019-02-13 05:41
本公开实施例公开了一种数据库操作方法、装置、电子设备及存储介质。其中,该方法包括:接收数据库的操作任务;根据预设的预测模型预测所述操作任务的输出所占用的预设资源;为所述操作任务分配所述预设资源。

【技术实现步骤摘要】
数据库操作方法、装置、电子设备及存储介质
本公开涉及数据库
,具体涉及一种数据库操作方法、装置、电子设备及存储介质。
技术介绍
互联网大数据企业正在越来越多的依赖海量的数据作为服务和决策的依据,这意味着大量的数据存储和查询工作。使用关系型数据库并通过执行结构化查询语言(StructuredQueryLanguage,SQL)是常用的方法。一般而言,对于一个操作任务,需要消耗一定的资源,例如磁盘I/O,存储资源,计算资源等。随着数据量的增大,这种操作任务变得越来越庞大,尤其是由于场景不同或隶属的业务部门不同,数据往往采用不同的存储和查询方式,例如MySQL、HBase、ElasticSearch等。不同的存储方式和查询方式存在不同的差异,因此完成操作任务所需要的各种资源也不尽相同。这意味着每一次任务所带来的各种资源的消耗量存在不可预测的波动。更为严重的是,随着数据量的指数级增长以及在一些关键领域,例如金融系统中对可靠性的需求的提升,不同任务之间带来的计算资源需求波动越来越大,这种波动在大并发、海量数据下可能会带来不可控的系统延迟,进而可能导致系统崩溃。本质上,这种资源需求的波动来源于两个方面,一方面是数据库存储数据量增大带来的,另外一个是不同操作任务本身结果之间天然存在差异,而系统无法预估在当前数据存储下不同操作任务对资源的需求。然而,专利技术人在实现本公开实施例相关技术方案的过程中发现,现有技术至少存在以下问题:尽管单个数据库都带有一定程度的优化方法,例如CN104820663中给出了基于SQL语句执行成本评估的低效SQL语句识别方法,该方法通过不断计算每条SQL语句的执行成本,进而找到低效的语句,并避免这些低效语句对整个系统带来不稳定因素。CN10243649中给出了基于实践检验的执行计划优化方法,该方法通过反馈的方式,不断检验优化器的准则或任务安排方法,使得优化器能够更好的与实际运行情况吻合。然而,这些方法仅能针对已知的SQL语句进行优化,并且优化的方法仅为数据库查询的方式或路径,例如选择通过索引表查询或是通过全表查询。这种方法无法对内部存储数据和外部发起的操作任务特征进行分析,因此优化程度有限。
技术实现思路
针对现有技术中的上述技术问题,本公开实施例提出了一种数据库操作方法、装置、电子设备及计算机可读存储介质,以解决如何让数据库和查询方法变得更为智能,能够在收到操作任务之时,就对任务可能带来的各种资源的需求进行预测,进而提前分配资源,避免资源冲突导致性能衰退。本公开实施例的第一方面提供了一种数据库操作方法,包括:接收数据库的操作任务;根据预设的预测模型预测所述操作任务的输出所占用的预设资源;为所述操作任务分配所述预设资源。在一些实施例中,根据预设的预测模型预测所述操作任务的输出所占用的预设资源,包括:确定所述操作任务中的操作语句的预设类型;其中,所述预设类型与所述操作语句的操作对象和语法结构相关;根据所述操作语句的操作对象和所述预设类型对应的预测模型预测所述操作任务的输出所占用的预设资源。在一些实施例中,确定所述操作任务对应的操作语句的预设类型,包括:将所述操作语句的语法结构与所述预设类型下的样本操作语句的语法结构进行匹配,得到第一匹配度;当第一匹配度大于第一预设阈值,将所述操作语句的操作对象与所述预设类型下的样本操作语句的操作对象进行匹配,得到第二匹配度;当第二匹配度大于第二预设阈值,确定所述操作语句属于所述预设类型。在一些实施例中,将所述操作语句的操作对象与所述预设类型下的样本操作语句的操作对象进行匹配,包括:将所述操作语句的操作对象与所述预设类型下的样本操作语句的相同或相似位置的操作对象进行匹配。在一些实施例中,所述方法还包括:按照语法结构和操作对象的匹配度,将多个样本操作语句分为若干组,每个组对应一个预设类型;对于每一个预设类型,根据其样本操作语句的操作对象与输出所实际占用的资源的关系,建立所述预设类型的预测模型。在一些实施例中,根据预设的预测模型预测所述操作任务的输出所占用的预设资源,包括:将所述操作任务对应的操作语句转化为标准数据;将所述标准数据输入至预先训练好的机器自学习模型中,得到所述操作语句的输出所占用的预设资源。在一些实施例中,所述方法还包括:收集多个样本操作语句,并将所述样本操作语句转化为标准数据;确定所述样本操作语句的输出所实际占用的资源;将所述样本操作语句对应的标准数据及其输出所实际占用的资源作为训练样本,对所述机器自学习模型进行训练。在一些实施例中,所述方法还包括:周期性地对训练好的所述机器自学习模型进行更新训练;或者,在监测到所述数据库的变化达到预设程度时,对训练好的所述机器自学习模型进行更新训练。在一些实施例中,所述标准数据为词向量数据。本公开实施例的第二方面提供了一种数据库操作装置,包括:接收模块,被配置为接收数据库的操作任务;预测模块,被配置为根据预设的预测模型预测所述操作任务的输出所占用的预设资源;分配模块,被配置为为所述操作任务分配所述预设资源。在一些实施例中,所述预测模块,包括:第一确定子模块,被配置为确定所述操作任务中的操作语句的预设类型;其中,所述预设类型与所述操作语句的操作对象和语法结构相关;第一预测子模块,被配置为根据所述操作语句的操作对象和所述预设类型对应的预测模型预测所述操作任务的输出所占用的预设资源。在一些实施例中,所述第一确定子模块,包括:第一匹配子模块,被配置为将所述操作语句的语法结构与所述预设类型下的样本操作语句的语法结构进行匹配,得到第一匹配度;第二匹配子模块,被配置为当第一匹配度大于第一预设阈值,将所述操作语句的操作对象与所述预设类型下的样本操作语句的操作对象进行匹配,得到第二匹配度;第二确定子模块,被配置为当第二匹配度大于第二预设阈值,确定所述操作语句属于所述预设类型。在一些实施例中,所述第二匹配子模块,包括:第三匹配子模块,被配置为将所述操作语句的操作对象与所述预设类型下的样本操作语句的相同或相似位置的操作对象进行匹配。在一些实施例中,所述装置还包括:分组模块,被配置为按照语法结构和操作对象的匹配度,将多个样本操作语句分为若干组,每个组对应一个预设类型;建立模块,被配置为对于每一个预设类型,根据其样本操作语句的操作对象与输出所实际占用的资源的关系,建立所述预设类型的预测模型。在一些实施例中,所述预测模块,包括:转化子模块,被配置为将所述操作任务对应的操作语句转化为标准数据;第二预测子模块,被配置为将所述标准数据输入至预先训练好的机器自学习模型中,得到所述操作语句的输出所占用的预设资源。在一些实施例中,所述装置还包括:收集模块,被配置为收集多个样本操作语句,并将所述样本操作语句转化为标准数据;确定模块,被配置为确定所述样本操作语句的输出所实际占用的资源;训练模块,被配置为将所述样本操作语句对应的标准数据及其输出所实际占用的资源作为训练样本,对所述机器自学习模型进行训练。在一些实施例中,所述装置还包括:第一更新训练模块,被配置为周期性地对训练好的所述机器自学习模型进行更新训练;或者,第二更新训练模块,被配置为在监测到所述数据库的变化达到预设程度时,对训练好的所述机器自学习模型进行更新训练。在一些实施例中,所述标准数据本文档来自技高网
...

【技术保护点】
1.一种数据库操作方法,其特征在于,包括:接收数据库的操作任务;根据预设的预测模型预测所述操作任务的输出所占用的预设资源;为所述操作任务分配所述预设资源。

【技术特征摘要】
1.一种数据库操作方法,其特征在于,包括:接收数据库的操作任务;根据预设的预测模型预测所述操作任务的输出所占用的预设资源;为所述操作任务分配所述预设资源。2.根据权利要求1所述的数据库操作方法,其特征在于,根据预设的预测模型预测所述操作任务的输出所占用的预设资源,包括:确定所述操作任务中的操作语句的预设类型;其中,所述预设类型与所述操作语句的操作对象和语法结构相关;根据所述操作语句的操作对象和所述预设类型对应的预测模型预测所述操作任务的输出所占用的预设资源。3.根据权利要求2所述的数据库操作方法,其特征在于,确定所述操作任务对应的操作语句的预设类型,包括:将所述操作语句的语法结构与所述预设类型下的样本操作语句的语法结构进行匹配,得到第一匹配度;当第一匹配度大于第一预设阈值,将所述操作语句的操作对象与所述预设类型下的样本操作语句的操作对象进行匹配,得到第二匹配度;当第二匹配度大于第二预设阈值,确定所述操作语句属于所述预设类型。4.根据权利要求3所述的数据库操作方法,其特征在于,将所述操作语句的操作对象与所述预设类型下的样本操作语句的操作对象进行匹配,包括:将所述操作语句的操作对象与所述预设类型下的样本操作语句的相同或相似位置的操作对象进行匹配。5.根据权利要求2-4中任一项所述的数据库操作方法,其特征在于,还包括:按照语法结构和操作对象的匹配度,将多个样本操作语句分为若干组,每个组对应一个预设类型;对于每一个预设类型,根据其样本操作语句的操作对象与输出所实际占用的资源的关系,建立所述预设类型的预测模型。6.根据权利要求1所述的数据库操作方法,其特征在于,根据预设的预测模型预测所述操作任务的输出所占用的预设资源,包括:将所述操作任务对应的操作语句转化为标准数据;将所述标准数据输入至预先训练好的机器自学习模型中,得到所述操作语句的输出所占用的预设资源。7.根据权利要求6所述的数据库操作方法,其特征在于,还包括:收集多个样本操作语句,并将所述样本操作语句转化为标准数据;确定所述样本操作语句的输出所实际占用的资源;将所述样本操作语句对应的标准数据及其输出所实际占用的资源作为训练样本,对所述机器自学习模型进行训练。8.根据权利要求7所述的数据库操作方法,其特征在于,还包括:周期性地对训练好的所述机器自学习模型进行更新训练;或者,在监测到所述数据库的变化达到预设程度时,对训练好的所述机器自学习模型进行更新训练。9.根据权利要求6-8任一项所述的数据库操作方法,其特征在于,所述标准数据为词向量数据。10.一种数据库操作装置,其特征在于,包括:接收模块,被配置为接收数据库的操作任务;预测模块,被配置为根据预设的预测模型预测所述操作任务的输出所占用的预设资源;分配模块,被配置为为所述操作任务分配所述预设资源。11.根据权利要求10所述的数据库操作装置,其特征在于,所述预测模块,包括:第一确定子模块,被配置为确定所述操作任务中的...

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

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

1