- 4
- 0
- 约9.47万字
- 约 71页
- 2025-10-16 发布于江西
- 举报
摘要
摘要
随着大数据时代的到来,数据的增长速度超过人们的想象。因此,对数据进行
存储,分析,查询的数据库管理系统成为了当代人不必可少的软件。而数据库中
最关键的组件是查询优化器,它决定了用户能否快速地找到自己需要的数据。但
是查询优化器是一个非常复杂的组件。传统的优化器采用很多启发式规则来降低
查询的难度,面对大量复杂的数据甚至需要进行手工调优。同时优化器的开发成
本很高,花费数月编写的版本可能需要多年的改善。机器学习有着处理复杂的大
量的数据的能力,为了弥补传统数据库的性能缺陷,将机器学习应用到数据库成
为了查询优化的一个新研究方向。
近些年基于机器学习的模型在查询优化领域做出了大量贡献,提升了传统数
据库的查询优化性能。大多数基于强化学习的查询优化模型致力于构建一个独立
的优化器,这些模型不依靠传统优化器的帮助,而是通过自我学习使模型达到超
乎传统优化器性能的目标,展现了机器学习模型强有力的竞争优势。这些机器学
习模型是数据驱动的,可以学习不同分布的数据,也能够适应复杂的查询,但是
它们大多放弃了传统数据库的知识,导致无法学习到这些内容,同时独立于数据
库导致了不能在实际生产过程得到应用。机器学习模型大多存在冷启动的问题和
以及不能适应新数据导致的性能回归等问题。
为了弥补机器学习的缺陷,本文提出了一个结合机器学习和传统优化器的代
价估计模型,构造了机器学习辅助传统数据库做好查询优化决策的框架。通过学习
传统数据库的专家知识,并且利用机器学习的数据处理能力,两者相结合提升传
统数据库PostgreSQL的查询优化性能。不同于前人提出的回归目标,本文的模型
将查询优化问题转化为执行计划的排序问题,以代价等基础知识为依据,不断地
汲取专家经验提升自我从而达到一个不错的效果。同时将模型集成于PostgreSQL,
依靠其计划搜索策略帮助它选择最好的执行计划。最后,本文在两个公开数据集
中证明了本模型框架的高效性,从训练效率和延迟性能的角度分析了本模型相对
于传统优化器和前人模型的优势之处。
关键词:查询优化,代价估计,机器学习,神经网络
I
ABSTRACT
ABSTRACT
Withtheadventofthebigdataera,thegrowthrateofdatahassurpassedpeople’s
imagination.Therefore,databasemanagementsystemsthatstore,analyze,andquerydata
havebecomeindispensablesoftwareincontemporarysociety.Themostcriticalcompo-
nentinthesedatabasesisthequeryoptimizer,whichdetermineswhetheruserscanquickly
findthedatatheyneed.However,thequeryoptimizerisaverycomplexcomponent.Tra-
ditionaloptimizersusemanyheuristicrulestoreducethecomplexityofqueries,andfacing
alargeamountofcomplexdata,theymayevenrequiremanualtuning.Additionally,the
developmentcostofoptimizersishigh;versionsthattakemonthstowritemayneedyears
toimprove.Machinelearninghastheabilitytohandlealargevolumeofcomplexdata,and
tocompensatefortheperformancedeficienciesoftraditionaldatabases,applyingmachine
learningtodatabaseshasbecomeanewresearchd
原创力文档

文档评论(0)