OtterTune dead,参数调优还有DBdoctor

前言

数据库性能调优这块必不可少的环节是进行参数调优,数据库的参数很多,比如Oracle甚至有上千个参数,如何进行参数设置非常关键。参数调优需要基于业务的负载模型、硬件配置等多种因素,好的参数调优可以让数据库性能整体吞吐提升甚至翻倍。

DBA会根据经验来调优数据库的参数,但面临着参数调优过程导致性能下降的风险,存靠人工调优的方式成本太高。

为解决这个痛点,于是就有了一些公司、学者开始进行研究,如何进行自动数据库参数调优,当然ottertune就是其中的一员。

前浪的OtterTune

图片

今天看到天舟和白鳝老师的文章后,打开OtterTune,发现官网显示公司Dead,一个有技术有资金的公司竟然挂了。在感慨的同时,也不由自主地向他们深深地鞠躬,这么好的一个产品,给整个数据库优化方向带来了很多宝贵的借鉴意义。

OtterTune在2022年融资1200万美元,对DBdoctor对外推广有极大的鼓舞,经常跟纪宽讨论为什么很多很好的软件多产自国外?较大的一个点是国外软件比较聚焦,反观国内,很少有聚焦在一个领域的数据库生态软件,几乎都是从云管平台开始做起,大一统的软件,看起来什么都有,细看发现哪一块都不突出。这也是当时我们决定DBdoctor只聚焦在性能领域的原因,彻底解决数据性能问题是我们做DBdoctor的初衷。所以,OtterTune Dead,还有DBdoctor。

OtterTune基于机器学习对数据库参数进行自动调优,利用已有的数据训练机器学习模型,进而自动化的推荐最优参数。用AI来代替数据库调参这个冗繁但又很重要的工作。

感谢AI

无形中很多工作已在强依赖AI,写代码Copilot,生成图片大模型,但是AI真正在数据库的工程落地进度似乎还不够快。DBdoctor也仅仅是上线了资源预测和根因诊断,且根因诊断还是统计学算法和AI结合的方式,DBdoctor的理念就是用数学模型代替传统经验,DBdoctor拥有比任何一款监控平台都细粒度的监控数据,这些数据在未来都会喂给AI,参数预测这个功能会是AI在DBdoctor深度落地的一个开始。

图片

大模型把啄木鸟的手给留下了

后浪的DBdoctor

DBdoctor的自动参数调优已在内测阶段,我们从OtterTune的源码和商业化产品里学到了很多宝贵的经验,两位AI博士基于OtterTune的框架理念,对其中的算法进行了一系列替换与调优,通过海信数万数据库实例的持续验证与学习,目前算法已达到较好的工程落地效果。基于海信质量为先的研发流程,我们内测还需要持续一段时间,请小伙伴们耐心等待。

OtterTune在Github上有个开源版,有兴趣的小伙伴可以下载一下(https://github.com/cmu-db/ottertune),说不定过阵子就没了。下面是我们剖析OtterTune源码得出来的整体详细流程图,有兴趣的小伙伴可以跟我们交流:

图片

DBdoctor参数调优目标有两个:

1)latency(SQL延时)

通过参数调优降低SQL的latency,提升执行速度。

2)TPS(极端压测数据库能支撑的的最大吞吐)

通过参数调优在不增加硬件的基础上,同样资源消耗提升数据库TPS性能吞吐。

总结

各位研发或者DBA小伙伴们,你们是否也会经常遇到类似数据库参数导致性能下降的问题!为让大家消除该困扰,在不增加硬件成本的基础上提升更高的性能吞吐,DBdoctor的小伙伴们正在马不停蹄地研发中,敬请期待~

图片

图片

DBdoctor推出长久免费版

DBdoctor是一款企业级数据库全方位性能监控与诊断平台,致力于解决一切数据库性能问题。可以对商业数据库、开源数据库、国产数据库进行统一性能诊断。

图片具备:SQL审核巡检报表监控告警存储诊断审计日志权限管理等免费功能,不限实例个数,可基于长久免费版快速搭建企业级数据库监控诊断平台。

图片同时拥有:性能洞察、锁分析、根因诊断、索引推荐、SQL发布前性能评估等高阶功能,官网可快速下载,零依赖,一分钟快速一键部署。

如果您想要试用全部功能可添加公众号自助申请专业版license。成为企业用户可获得产品定制、OpenAPI集成、一对一专家等高阶服务。欢迎添加小助手微信了解详细信息!

1️⃣ 产品介绍:

内核级数据库性能诊断工具DBdoctor

2️⃣免费下载/在线试用:

https://dbdoctor.hisensecloud.com/col.jsp?id=126

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/38617.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Symfony配置管理深度解析:构建可维护项目的秘诀

Symfony是一个高度灵活且功能丰富的PHP框架,它提供了一套强大的配置管理系统,使得开发者能够轻松定制和优化应用程序的行为。本文将深入探讨Symfony中的配置管理机制,包括配置的结构、来源、加载过程以及最佳实践。 一、配置管理的重要性 在…

Scala类型类(Type Classes):灵活而强大的类型增强术

🌟 Scala类型类(Type Classes):灵活而强大的类型增强术 在Scala编程语言中,类型类是一种强大的特性,它允许开发者以类型安全的方式扩展语言。类型类提供了一种机制,可以将行为与类型关联起来,类似于Java中…

【笔记】Android Settings 应用设置菜单的界面代码介绍

简介 Settings应用中,提供多类设置菜单入口,每个菜单内又有各模块功能的实现。 那么各个模块基于Settings 基础的界面Fragment去实现UI,层层按不同业务进行封装继承实现子类: DashboardFragmentSettingsPreferenceFragment 功…

植物大战僵尸杂交版,最新安装包(PC+手机+苹果)+ 修改器+高清工具

植物大战僵尸杂交版:全新游戏体验与创意碰撞 游戏简介 《植物大战僵尸杂交版》是由B站知名UP主潜艇伟伟迷基于经典游戏《植物大战僵尸》进行的一次大胆且富有创意的二次创作。这款游戏不仅保留了原版游戏的经典玩法,还融入了植物杂交的全新概念&#x…

Qt扫盲-QRect矩形描述类

QRect矩形描述总结 一、概述二、常用函数1. 移动类2. 属性函数3. 判断4. 比较计算 三、渲染三、坐标 一、概述 QRect类使用整数精度在平面中定义一个矩形。在绘图的时候经常使用,作为一个二维的参数描述类。 一个矩形主要有两个重要属性,一个是坐标&am…

同步互斥与通信

目录 一、同步与互斥的概念 二、同步与互斥并不简单 三、各类方法的对比 一、同步与互斥的概念 一句话理解同步与互斥:我等你用完厕所,我再用厕所。 什么叫同步?就是:哎哎哎,我正在用厕所,你等会。 什…

【实战场景】记一次UAT jvm故障排查经历

【实战场景】记一次UAT jvm故障排查经历 开篇词:干货篇:1.查看系统资源使用情况2.将十进制进程号转成十六进制3.使用jstack工具监视进程的垃圾回收情况4.输出指定线程的堆内存信息5.观察日志6.本地环境复现 总结篇:我是杰叔叔,一名…

线下促销折扣视频介绍

千呼新零售2.0系统是零售行业连锁店一体化收银系统,包括线下收银线上商城连锁店管理ERP管理商品管理供应商管理会员营销等功能为一体,线上线下数据全部打通。 适用于商超、便利店、水果、生鲜、母婴、服装、零食、百货、宠物等连锁店使用。 详细介绍请…

Linux上systemctl 和 service 两个命令的区别和联系

systemctl 和 service 两个命令都是 Linux 系统中用于管理服务的工具,但它们分别关联着不同的初始化系统(init system),并且在功能和使用场景上有所差异。 service 命令 关联的初始化系统:service 命令通常与 SysV i…

Python从零学习笔记(1)

1pip无法调用 刚入python,需要用到第三方模块,但是按照教程使用>>>pip install 总是出现错误提示 网上查询许久:语句没错;安装没错;环境配置也正常 最后才知道是不能先进入python模式,而是使用p…

2024年道路运输安全员考试题库及答案

一、多选题 11.《放射性物品安全管理条例》规定,运输放射性物品时,应当使用专用的放射性物品运输包装容器。在运输过程中正确的做法有( )。 A.托运人和承运人应当按照国家放射性物品运输安全标准和国家有关规定,在…

什么是定时器?

前言👀~ 上一章我们介绍了阻塞队列以及生产者消息模式,今天我们来讲讲定时器 定时器 标准库中的定时器 schedule()方法 扫描线程 手动实现定时器 任务类 存储任务的数据结构 定时器类 如果各位对文章的内容感兴趣的话,请点点小赞&am…

【Python】列表

目录 一、列表的概念 二、列表的创建 1.变量名 [ ] ..... 2.通过Python内置 的I ist类的构造函数来创建列表 三、操作列表元素的方法 1. 修改 2. 增加元素 3. 删除 4. 其他操作 四、遍历列表 五、列表排序 六、列表切片(list slicing) 七、…

浅谈什么是计算机科学与技术(Computer Science,CS)

计算机科学的核心内容 计算机科学(Computer Science, CS)涵盖了以下主要领域: 硬件:涉及数字电路、集成电路、存储器和硬件设计与验证方法等。 例子:学习如何设计和实现一个简单的CPU,包括理解指令集、时钟…

值得细读的8个视觉大模型生成式预训练方法

作者:vasgaowei(已授权原创) 编辑: AI生成未来 链接:https://zhuanlan.zhihu.com/p/677794719 大语言模型的进展催生出了ChatGPT这样的应用,让大家对“第四次工业革命”和“AGI”的来临有了一些期待,也作为…

Linux基础指令介绍与详解——原理学习

前言:本节内容标题虽然为指令,但是并不只是讲指令, 更多的是和指令相关的一些原理性的东西。 如果友友只想要查一查某个指令的用法, 很抱歉, 本节不是那种带有字典性质的文章。但是如果友友是想要来学习的,…

[ALSA]从零开始,使用ALSA驱动播放一个音频

前言 最近学了不少有关音频相关的,最近搞一下ALSA驱动 安装 参考Linux应用开发【第八章】ALSA应用开发 中提到的ALSA库及工具章节,本文中有比较详细的有关ALSA驱动引用程序怎么安装的,这里不再赘述。 关于ALSA,就当成一个音频…

深入浅出:npm常用命令详解与实践【保姆级教程】

大家好,我是CodeQi! 在我刚开始学习前端开发的时候,有一件事情让我特别头疼:管理和安装各种各样的依赖包。 那时候,我还不知道 npm 的存在,手动下载和管理这些库简直是噩梦。 后来,我终于接触到了 npm(Node Package Manager),它不仅帮我解决了依赖管理问题,还让我…

Python深度理解系列之【排序算法——冒泡排序】

读者大大们好呀!!!☀️☀️☀️ 👀期待大大的关注哦❗️❗️❗️ 🚀欢迎收看我的主页文章➡️木道寻的主页 文章目录 🔥前言🚀冒泡排序python实现算法实现图形化算法展示 ⭐️⭐️⭐️总结 🔥前…

Apache POI、EasyPoi、EasyExcel

目录 ​编辑 (一)Apache PoI 使用 (二)EasyPoi使用 (三)EasyExcel使用 写 读 最简单的读​ 最简单的读的excel示例​ 最简单的读的对象​ (一)Apache PoI 使用 (二&…