当前位置: 首页 > news >正文

自治调优!人大金仓解放DBA双手

f64c5cd457305b869abd41a09d168beb.gif

数据库系统的性能是确保整个应用系统高效运转的关键因素,因此数据库性能调优工作至关重要。KingbaseES通过将人工调优过程内化为数据库内核,成功实现了自治调优。这种创新的调优方案为DBA提供了更高效且准确的性能调优途径,同时也显著降低了数据库系统的维护成本和复杂性。

当今数据库调优难题

如今,DBA需要具备专业的技能和知识,才能够对数据库进行充分优化。但数据库性能优化涉及诸多因素,完全依赖DBA人工进行数据库和系统统计信息收集,再进行多轮分析和定位,会耗费大量的时间和精力。如果数据库拥有自动调优工具,那么工作效率将得到极大的提升。可以说,数据库性能调优的种种难题本质上源于数据库的易诊断性较低。为了解决这些问题,需要实现数据库性能的自治。

内核驱动的自治调优方案

自治数据库其实是从基础级、管理级、预测级到自适应级逐步发展而来的,相当于汽车从手动挡到自动挡的变化过程。在基础级阶段,管理者往往要依靠能力和经验来做调优;到管理级的时候,系统能够去做相对完善的信息收集,管理者可以基于这些信息去做分析和决策;到预测级时,系统可以自己做模式识别与预测。

9d07eab880fd2c30a63635016981b9f6.png

以遇到TOP SQL问题为例,系统可以根据问题预测原因:缺索引、需要做语句改写,还是因为类型转换出现无法使用索引等问题,并给出相应建议;最后是自适应级,相对于预测级的半自动升级到了自动档的状态,遇到性能问题系统可以自动进行优化。

66dd4b8edcbadce2db5eb13eb196a3e8.png

KingbaseES在内核中建立了自治数据库的框架,将感知、诊断、建议、优化的过程都模块化,从而能够灵活地基于建议任务对各个模块进行填充,进而实现实例和SQL性能问题的自治调优。

实例调优

在诊断和建议方面,针对传统数据库内部的性能度量单位不同、内容不全面,无法准确诊断定位问题,KingbaseES以数据库时间为单位,统一了度量衡,建立了基于数据库时间的决策树模型,可以自顶向下来定位性能问题的根本原因。针对时间模型,采集、存储必需的性能分析数据,同时尽量避免对系统的性能影响。

88d09dc5702b85d086692ba0d0dbf6be.png

以上述技术为基础,KingbaseES在数据库内部实现了大量的动态性能视图,并提供KWR、 KWRDIFF、KSH等诊断报告。此外,对于内存不足、IO问题、锁问题、缺少索引等常规问题,用户直接调用KDDM即可给出建议。对于建议未能覆盖的问题,需要用户通过分析KWR、KSH等方式来进行人工分析。

SQL调优

在SQL调优方面,KingbaseES提供了建议、自适应逻辑优化规则、自适应基数估计三种方式。

基于采集到的问题SQL,调优建议器可以做进一步分析,最后基于规则, 给出优化建议,如索引建议、统计信息建议、改写建议等。

逻辑优化是一种基于规则的优化方法,它按照一定的顺序应用一系列优化规则来对输入的逻辑执行计划进行改进,使其变得更加高效。KingbaseES已经内置了一百多条常用的逻辑优化规则,能够满足大部分复杂业务的需求。

对于 SQL调优中常见的基数估计错误问题,KingbaseES可以利用执行结果自动修正,对于基数估计偏差较大的情况,经过一轮或多轮的迭代执行,可以给出更优的执行计划。

目标:自治+AI

KingbaseES性能管理方向和目标就是自治,让用户的性能调优工作越来越简单。目前,KingbaseES已经提供了预测级和自适应级的优化方法,并将持续丰富相关能力,包括更丰富的SQL建议、参数建议,PGA、SGA的自适应,执行计划代价的自适应等。除此之外,KingbaseES开始将AI应用在趋势预测、参数调优、基数估计等方面

17e7b9402fcb60a86fd904abaf7457f0.jpeg

国产数据库的时代已经到来。人大金仓在性能自治等方面进行了诸多探索,将推动产业发展进入全新阶段,致力成为世界卓越的数据库产品与服务提供商。未来,金仓数据库将不断突破关键技术的创新,为数据库产业创新发展带来更多的可能性。

2276f8331ab54c622bf2cd4c00e9da6d.png供稿:产品研发中心

编辑:王堇

审核:日尧

69a2ac8cf63075dee1910514fdb28376.gif

相关文章:

自治调优!人大金仓解放DBA双手

数据库系统的性能是确保整个应用系统高效运转的关键因素,因此数据库性能调优工作至关重要。KingbaseES通过将人工调优过程内化为数据库内核,成功实现了自治调优。这种创新的调优方案为DBA提供了更高效且准确的性能调优途径,同时也显著降低了数…...

深度学习环境配置------windows系统(GPU)------Pytorch

深度学习环境配置------windows系统(GPU)------Pytorch 准备工作明确操作系统明确显卡系列 CUDA和Cudnn下载与安装1.下载2.安装 环境配置过程1.安装Anacoda2.配置环境1)创建一个新的虚拟环境2)pytorch相关库的安装 2.安装VScode1&…...

el-menu标题过长显示不全问题处理

项目基于vue-element-admin 问题 期望 处理方式 \src\layout\components\Sidebar\index.vue 文件后添加CSS <style scped> /* 侧栏导航菜单经典 文字超长溢出问题 CSS折行 */ .el-submenu__title {display: flex;align-items: center; } .el-submenu__title span {white-…...

微信游戏开发:连接社交与娱乐的创新之路

在移动互联网时代&#xff0c;微信已经成为了人们日常生活中不可或缺的社交工具。而微信游戏&#xff0c;作为在这一平台上崛起的新兴产业&#xff0c;不仅给用户提供了更多娱乐选择&#xff0c;也为开发者们创造了独特的机遇。本文将探讨微信游戏开发的关键步骤、技术要点以及…...

1688一件采购实现指南:含代码实现采购流程

一、引言 1688是中国最大的B2B电子商务平台之一&#xff0c;提供了丰富的商品信息和采购服务。一键采购是1688平台的一项便捷功能&#xff0c;可以帮助用户快速完成采购流程&#xff0c;提高采购效率。本文将详细介绍如何使用1688一键采购功能&#xff0c;并通过代码示例演示如…...

div中一个图片怎么铺满整个div而且不超出div按比例铺满div

重要信息: background-size:cover或者background-size:contain;属性 设置图片不重复: background-repeat:no-repeat; 设置字体在div中间:...

云原生之深入解析Kubernetes的架构及特性

一、kubernetes 架构 从宏观上来看 kubernetes 的整体架构&#xff0c;包括 Master、Node 以及 Etcd。Master 即主节点&#xff0c;负责控制整个 kubernetes 集群&#xff0c;它包括 Api Server、Scheduler、Controller 等组成部分。它们都需要和 Etcd 进行交互以存储数据&…...

分布工具类的定义与实现及测试。

package d5.util;public class PageUtil {private int pageSize;//一页有多少条private int currIndex;//当前是第几页private int totalCount;//共有多少条记录 谁给我&#xff1f; 逻辑层的 getTotalCountprivate int totalPage;//共有多少页 private int start;//显时时开始…...

如何在忘记密码的情况下恢复解锁 iPhone

您忘记了 iPhone 密码吗&#xff1f;Apple 官方通常建议将 iPhone 恢复至出厂设置以将其删除。这种修复很不方便&#xff0c;甚至可能比问题本身更麻烦。 如果您也经历过同样的情况&#xff0c;并且想知道忘记了 iPhone 密码并且不想恢复它该怎么办&#xff0c;我们的终极指南…...

通过compileall库将python文件编译为pyc文件

文章目录 什么是 .pyc 文件将 .py 文件编译为 .pyc 文件编译单个文件编译多个文件 在实际开发中&#xff0c;有时候需要将产品&#xff08;以.py文件为例&#xff09;发布到外部环境&#xff0c;但我们并不想显式地让别人看到我们的源码&#xff0c;此时就需要对源码进行加密保…...

【Docker】深入理解Docker:一种革新性的容器技术

前言 Docker 是一个开源的应用容器引擎&#xff0c;让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux或Windows操作系统的机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。 &#x1f4d5;作者简介&#xff1a;热…...

数据库——安全性

智能2112杨阳 一、目的与要求&#xff1a; 1、设计用户子模式 2、根据实际需要创建用户角色及用户&#xff0c;并授权 3、针对不同级别的用户定义不同的视图&#xff0c;以保证系统的安全性 二、内容&#xff1a; 先创建四类用户角色&#xff1a; 管理员角色Cusm、客户角…...

Vue路由跳转重定向动态路由VueCli

Vue路由跳转&重定向&动态路由&VueCli 一、声明式导航-导航链接 1.需求 实现导航高亮效果 如果使用a标签进行跳转的话&#xff0c;需要给当前跳转的导航加样式&#xff0c;同时要移除上一个a标签的样式&#xff0c;太麻烦&#xff01;&#xff01;&#xff01; …...

mysql 当前时间加3个工作日

1. 问题描述&#xff1a; 在日常工作中可能会遇到计算工作日的情况 2. 解决过程 (1) 首先制作一个假日表 holiday_config CREATE TABLE holiday_config (id int(10) NOT NULL AUTO_INCREMENT,holiday varchar(8) DEFAULT NULL,PRIMARY KEY (id) USING BTREE ) ENGINEInnoDB…...

2023年11月国产数据库大事记-墨天轮

本文为墨天轮社区整理的2023年11月国产数据库大事件和重要产品发布消息。 11月国产数据库大事记 TOP10 11月国产数据库大事记&#xff08;时间线&#xff09; 11月1日消息&#xff0c;近日&#xff0c;由金仓数据库支撑的某大型运营商B域一级BOSS枢纽系统顺利升级上线。金仓数…...

第二十八章 控制到 XML 模式的映射 - 流类到 XML 类型的映射

文章目录 第二十八章 控制到 XML 模式的映射 - 流类到 XML 类型的映射将集合属性映射到 XML 模式 第二十八章 控制到 XML 模式的映射 - 流类到 XML 类型的映射 如果类或属性基于流&#xff0c;则它将投影为 XML 类型&#xff0c;如下表所示&#xff1a; IRIS 流的 XML 类型 …...

GO EASY 游戏框架 之 GRPC 扩展篇 04

1 Overview 此章节是对第三章的一个补充。同样属于RPC的篇章。是专门为了类似游戏服务这种需要指定RPC服务端具体地址&#xff0c;也就是具体是哪台机器的某应用进程&#xff0c;通信的方式。笔者简单的封装了下保证基本的服务稳定&#xff0c;且具备服务发现的属性即可&#…...

【JavaScript】JavaScript中的GC算法

1、内存管理 内存&#xff1a;由可读写单元组成&#xff0c;标识一片可操作的空间 管理&#xff1a; 认为的去操作一篇空间的申请、使用和释放 内存管理&#xff1a;开发者主动申请空间、使用空间、释放空间 管理流程&#xff1a; 申请-使用-释放 // 申请 let obj {} //使…...

从互联网到云计算再到 AI 原生,百度智能云数据库的演进

1 数据库行业发展概述 如果说今年科技圈什么最火&#xff0c;我估计大家会毫不犹豫选择 ChatGPT。ChatGPT 是 2022 年 11 月 30 日由 OpenAI 发布的聊天应用。它创造了有史以来用户增长最快的纪录&#xff1a;自 11 月 30 日发布起&#xff0c;5 天就拥有了 100 万活跃用户…...

C# | CountdownEvent使用教程 (通过与ManualResetEvent对比,快速了解其特性)

C# CountdownEvent使用教程 对于熟悉ManualResetEvent的同学来说&#xff0c;了解CountdownEvent的差异对于更好地利用它们是非常重要的。通过对ManualResetEvent和CountdownEvent的对比&#xff0c;我们可以更好地理解CountdownEvent的特点和使用场景。 ManualResetEvent回顾…...

5个技巧快速掌握猫抓插件:免费高效的浏览器资源下载终极指南

5个技巧快速掌握猫抓插件&#xff1a;免费高效的浏览器资源下载终极指南 【免费下载链接】cat-catch 猫抓 浏览器资源嗅探扩展 / cat-catch Browser Resource Sniffing Extension 项目地址: https://gitcode.com/GitHub_Trending/ca/cat-catch 在当今数字内容爆炸的时代…...

如何高效修复损坏视频:专业MP4恢复工具untrunc实战指南

如何高效修复损坏视频&#xff1a;专业MP4恢复工具untrunc实战指南 【免费下载链接】untrunc Restore a truncated mp4/mov. Improved version of ponchio/untrunc 项目地址: https://gitcode.com/gh_mirrors/un/untrunc 你是否曾因视频文件意外损坏而痛心疾首&#xff…...

OpenHarmony与嵌入式Linux实战:从社区项目到深度开发指南

1. 项目概述&#xff1a;从社区精选到深度解析每周浏览技术社区&#xff0c;总能看到不少让人眼前一亮的项目分享&#xff0c;但信息往往比较零散&#xff0c;像是“嵌入式学习资料包”、“OpenHarmony挑战赛作品赏析”这类帖子&#xff0c;标题很吸引人&#xff0c;点进去却常…...

基于Arduino与VS1053的宠物智能服装DIY:嵌入式系统集成实践

1. 项目概述与核心思路给宠物做一件会发光、会发声的智能服装&#xff0c;听起来像是科幻电影里的情节&#xff0c;但用今天触手可及的硬件和开源工具&#xff0c;这完全是一个可以亲手实现的周末项目。这个项目的核心&#xff0c;是将一个微小的“智能大脑”和一套声光系统&am…...

Pandas 数据清洗与分析

第一部分&#xff1a;水果销售分析&#xff08;入门篇&#xff09;首先&#xff0c;我们有一个简单的水果销售列表。我们的任务是算出每种水果的总销量&#xff0c;以及每天的销售明细。1. 数据准备我们先造一点数据&#xff1a;import pandas as pd import numpy as npdata {…...

如何实现GitHub下载10倍加速:免费插件完整配置终极指南

如何实现GitHub下载10倍加速&#xff1a;免费插件完整配置终极指南 【免费下载链接】Fast-GitHub 国内Github下载很慢&#xff0c;用上了这个插件后&#xff0c;下载速度嗖嗖嗖的~&#xff01; 项目地址: https://gitcode.com/gh_mirrors/fa/Fast-GitHub 对于国内开发者…...

瑞萨RZ/V2N:15 TOPS能效比AI视觉芯片,赋能边缘智能应用

1. 瑞萨RZ/V2N&#xff1a;一颗为“看得懂”而生的中端AI视觉芯在嵌入式视觉AI这个赛道上&#xff0c;开发者们常常面临一个经典的“选择题”&#xff1a;是追求极致的性能&#xff0c;上马功耗和成本都更高的高端方案&#xff0c;还是为了控制预算和功耗&#xff0c;在性能上做…...

ARM迷你PC硬核体验:RK3588玩转游戏、影音与家庭服务器

1. 项目概述&#xff1a;当ARM迷你PC遇上硬核游戏最近几年&#xff0c;迷你PC市场可以说是百花齐放&#xff0c;从主打办公的英特尔NUC&#xff0c;到各种基于AMD平台的准系统&#xff0c;选择非常多。但不知道你有没有注意到&#xff0c;一股新的力量正在悄然崛起——那就是基…...

若依框架菜单管理进阶:从零构建独立详情页面的完整实践

1. 若依框架菜单管理基础与详情页需求分析 第一次接触若依框架的开发者可能会对它的菜单管理系统感到困惑。作为一个基于Spring Boot和Vue.js的前后端分离框架&#xff0c;若依的菜单管理实际上扮演着系统导航和权限控制的双重角色。在标准代码生成器生成的页面中&#xff0c;…...

别再自己造轮子了!用BouncyCastle库在C#里快速搞定SM4国密加解密

用BouncyCastle在C#中高效实现SM4国密算法 金融级数据安全已成为现代企业系统的刚需&#xff0c;而国密算法作为我国自主研发的密码体系核心&#xff0c;正在政务、金融等高安全要求场景中快速普及。SM4作为国密标准中的对称加密算法&#xff0c;其128位分组长度和32轮非线性迭…...