好消息,腾讯云数据库团队智能调参CDBTune产品现已进入内测阶段,欢迎数据库爱好者、使用者、开发者前来测试。
CDBTune(cloud database tune)是基于2019至2021年间腾讯云数据库团队连续发表两篇顶级论文的研究成果,对云数据库进行调优的一整套解决方案,旨在充分借助深度学习技术提升数据库的运行效率。
在现实场景中,由于业务系统的千差万别以及大量参数带来的可设置范围复杂度,往往需要借助经验去构筑一套相对较为优异且通用的参数模板。因此,数据库当前运行参数往往也不是业务所需的最佳参数。同时,数据库参数调优能力也是专家级数据库管理者的专属技能,这也就意味着调优性能受限于人力。除此之外,数据库参数调优还存在以下常见问题:
- 参数非常多:例如 MySQL,有几百个配置项,调优难度大。
- 人力成本高:需要专职 DBA,依靠专家经验,人时成本高。
- 工具普适性:现存工具功能有限,耗时久效果一般。
- 云上新需求:部分用户没有专职运维团队,参数调优很难实现。
腾讯云数据库团队通过不断强化学习算法来解决数据库参数设置的问题,目标是使用有限的样本,构建端到端的模型,输入为当数据库当前状态,输出为推荐的配置,并且将时间成本控制到尽可能的短。基于此,团队构建了一个使用深度强化学习的云数据库调优系统,通过设置性能目标奖励,比如TPS上升,QPS上升或者延迟降低,认为是获得奖励,使得AI像玩游戏一样来调整参数,最终数据库获得更高的一个性能。
在整个过程中,数据库上执行推荐配置数据库的当前状态将发生变化。内部指标可用于衡量与强化学习状态相对应的数据库的运行时的行为。而外部指标可评估数据库的性能或奖励,不断重复整个过程,直到模型收敛。从调优效果比对图中可以看出,CDBTune在所有的情况下均体现了更好的性能,响应时间普遍降低50%以上。
同时也得益于腾讯云充沛且完善的硬件基础设施,以及遗传算法、专家经验、定型价格,使得只能调参得以产品化,不仅仅停留在理论层面。
扫描下方二维码即可申请CDBTune测试。详细操作文档,可点击阅读原文获得。
图:智能调参CDBTune内测通道
智能调参CDBTune服务于数据库适应业务的各个阶段,所能实现的功能也正对应着每一阶段的特性。具体如下:
实例新购阶段,可针对每一种场景训练出最优配置,并且考虑到业务特征支持灵活自定义,在不同的工作负载上有15%-50%的性能提升。
- 在未知并发量、负载的情况下,CDBTune支持交易类场景、OLTP性能测试场景、压力测试场景选择。
- 在已有最佳性能参数的情况下,CDBTune支持针对性调优,不覆盖原有最佳性能参数设置,不影响客户手工指定最优参数。
- 在特殊业务场景下,应用程序必须适配特殊场景,参数调整不影响参数模版的使用。
业务的快速迭代阶段,可主动判断业务类型,当适应快速迭代后,仅需2-3小时即可获得调优结果。
- 当业务特征快速变化时,主动确定业务类型,减少逐一匹配带来的资源损耗。
- 不同的场景可以根据自身情况进行完全自定义,针对具体场景进行专项调用。
- 预估优化结果,一键快速应用至实例。
稳定运行阶段,整个数据库运行的负载及特性明确,该阶段主要目标为降低TCO。
- 根据长期运行监控分析工作负载特征。
- 记录工作负载相关SQL信息。
- 记录工作负载相关资源信息。
整体而言,CDBTune具体优势如下:
全生命周期:CDBTune支持在新购阶段以及运行阶段进行分析,覆盖数据库实例全生命周期。
灵活易操作:针对不同的场景可以根据实际需求进行负载特征的调整,适配多样化的业务场景。
快速可靠:对比传统的深度学习算法要获取最佳参数建议时长减少60%以上。
优越性能:针对性优化,获得更好更准确的参数建议,实现更优的参数设置。
﹀
﹀
﹀
-- 更多精彩 --
AI 调参新纪元,腾讯数据库论文被SIGMOD收录
↓↓点击阅读原文,查看CDBTune测试操作指引