一、前言
数据库管理系统(DBMS)是任何数据密集型应用程序中最重要的组件。它可以处理大量的数据和复杂的负载工作。但是却难以管理,因为它们具有数百个配置选项,用于控制诸如用于缓存的内存量以及将数据写入存储器等因素。企业经常聘请这方便的专家来协助管理,但是专家对许多企业来说成本太高。
OtterTune是由中的学生和研究人员开发的新工具,可以自动为DBMS的配置选项找到最好的设置方法。OtterTune目标是使任何人都更容易部署数据库管理系统,即使是那些在数据库管理方面没有任何专业知识的人也可以使用它。OtterTune与其他DBMS配置工具不同,因为它利用从先前的DBMS部署调整中学到知识。大大减少了调整新的DBMS部署所需的时间和资源。为此,OtterTune维护了从以前的调优会话收集的调优数据库。它使用此数据构建机器学习(ML)模型,以捕获DBMS如何响应不同的配置。OtterTune使用这些模型来指导新应用程序的实验,推荐改进目标参数的设置(例如,减少延迟或提高吞吐量)。
二、工作原理
在新的调试会话开始时,用户告诉OtterTune要优化的目标参数(例如延迟或吞吐量)。客户端控制器连接到目标DBMS并收集其Amazon EC2实例类型和当前配置。
然后,控制器开始其第一个观察期,在此期间它观察DBMS并记录目标参数。当观察期结束时,控制器从DBMS收集内部指标,如MySQL的计数器,用于从磁盘读取的页面和写入磁盘的页面。控制器将目标参数和内部度量都返回给调优管理器。
当OtterTune的调优管理器收到指标时,它将它们存储在其存储库中。OtterTune使用结果来计算控制器应该在目标DBMS上安装的下一个配置。调优管理器将此配置返回给控制器,并估计运行它的预期改进。用户可以决定是继续还是终止调整会话。
三、源码部署
1、下载源码:https://github.com/cmu-db/ottertune
2、导入到eclipse中(刚导入的时候会发现缺少很多的支持包,但仔细一看里边的文件中有一个build.gradle,这是基于工具Gradle构建的,我们不用一个个去寻找下载其中的jar包,我们只需要在eclipse中集成Gradle插件,然后导入项目,Gradle会根据build.gradle文件里边列出的jar包自动通过网络下载)。
3、Gradle安装配置参考文章:https://www.cnblogs.com/274914765qq/p/4401525.html
原文地址:https://blog.csdn.net/weixin_40449300/article/details/87881045
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。