[发明专利]一种基于循环神经网络的数据库查询时间预测方法有效
申请号: | 201710647281.3 | 申请日: | 2017-08-01 |
公开(公告)号: | CN107491508B | 公开(公告)日: | 2020-05-26 |
发明(设计)人: | 伍赛;毕里缘;陈珂;陈刚;寿黎但;胡天磊 | 申请(专利权)人: | 浙江大学 |
主分类号: | G06F16/2453 | 分类号: | G06F16/2453;G06F16/2455 |
代理公司: | 杭州求是专利事务所有限公司 33200 | 代理人: | 林超 |
地址: | 310058 浙江*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 循环 神经网络 数据库 查询 时间 预测 方法 | ||
本发明公开了一种基于循环神经网络的数据库查询时间预测方法。首先从数据库历史查询记录中抽取出查询计划,构成的原始数据,一条查询计划包含操作信息和运行时间;按照运行时间长短将原始数据分类,使得每类中的查询计划的数量相等;对查询计划进行特殊处理获得操作序列和运行时间序列;操作序列作为特征向量和运行时间序列作为标签,输入神经网络,训练并得到模型;针对待测的查询计划,重复步骤获得操作序列,输入模型,输出运行时间序列,完成对数据库查询时间的预测。本发明方法在关系型数据库查询时间预测上取得了良好的效果,模拟数据训练下模型的正确率高于78%。该方法可以用于解决查询优化、负载管理中的关键问题。
技术领域
本发明涉及了一种深度学习领域的建模和特征提取方法,尤其是涉及了一种基于循环神经网络的数据库查询时间预测方法。
背景技术
随着数据库中数据量的与日俱增和查询的日益复杂,数据库管理面对极大的挑战。负载管理就是数据管理中面临的挑战之一。其要解决的核心问题就是查询执行时间的预测。该不该执行某条查询语句?如果要执行,什么时候执行?如果迟迟没有结束,该等待多久之后强制结束该查询?无法预计的长时间运行查询是计算机资源耗尽的罪魁祸首。如果在执行之前,查询的运行时间就能被确定,就可以取消执行无法在期望时间内完成的查询或者在计算机空闲时,不影响其他查询的情况下执行。但是由于数据库系统的复杂性和计算机资源的竞争,很难精确地估计不同关系操作的开销。因此,查询开销预测成为一个重要的研究问题。
近年来,针对查询开销的预测问题,研究人员提出了多种面向关系型数据库的查询开销预测方案。有些研究没有预测出真实的运行时间,而是估计了查询完成的百分比或者输出了一个任意单位的值来代表查询开销,类似于查询优化器的开销预测。有些研究需要运行时性能统计,这需要额外的开销去产生统计数据。
虽然上述的技术方案很大程度上解决了查询开销预测的问题,但是有两个问题并没有同时得到解决:第一,时间开销预估的结果是任意单位,很难映射到时间单位,欠缺参考性。第二,预测需要查询执行中的信息,无法在查询执行前就给出预测。
发明内容
为了解决背景技术中存在的问题,本发明的目的在于针对现有技术的不足,提供一种基于循环神经网络的数据库查询时间预测方法。
本发明首先设计了一种数据库查询计划中操作特征提取方法,并设计了神经网络的模型结构。
本发明解决其技术问题采用的技术方案如下:
对查询计划进行特殊处理,具体是提取查询计划中操作的关键特征,经过后序遍历,生成操作序列;再使用一种特殊的循环神经网络——LSTM(长短期记忆)神经网络来建立模型,预测运行时间。
所述方法的具体步骤如下:
(1)首先从数据库历史查询记录中抽取出查询计划构成原始数据,一条查询计划包含了多个操作及其对应的运行时间;
查询计划是指数据库中一个查询语句转换成具体的底层运行的计划,是由数据库查询优化器生成的。查询计划是由多个操作作为节点组成的多叉树。
同一查询语句可能会有不同的查询计划,其执行结果相同,执行时间不同。
(2)按照查询计划的运行时间长短将原始数据分类,使得每类中包含的查询计划的数量相等;
即按照运行时间长短顺序划分区间,将所有查询计划根据自身的运行时间归类到各个区间中,使得每个区间中的查询计划的数量均匀;
(3)对查询计划进行特殊处理获得操作序列,并将查询计划中的所有运行时间按照操作序列中的顺序对应排列组成运行时间序列;
(4)将操作序列作为特征向量和运行时间序列作为标签,输入神经网络训练并得到模型;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浙江大学,未经浙江大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710647281.3/2.html,转载请声明来源钻瓜专利网。
- 上一篇:维护推送信息的方法及装置
- 下一篇:一种用户属性信息挖掘方法、装置和介质