阿里云数据库CloudDBA智慧解决数据库性能优化和问题诊断难题

本文涉及的产品
云原生数据库 PolarDB 分布式版,标准版 2核8GB
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
RDS PostgreSQL Serverless,0.5-4RCU 50GB 3个月
推荐场景:
对影评进行热评分析
简介: 阿里云数据库从9月28号起开始在控制台推出CloudDBA功能,通过客户申请的方式灰度打开,助力客户快速定位诊断问题,优化数据库,帮助客户更高效的使用云数据库。此项功能集相信会成为云数据库的标准配置。

背景


我要申请CloudDBA免费体验




    阿里云数据库为何推出CloudDBA问题诊断(trouble shooting) 性能优化performance tunning) 一直都是数据库领域的专业问题,需要资深DBA的专业技能才能胜任解决,但这样的人才是稀缺的,无法及时满足大部分的企业紧急需求。如果有一款产品能够在大多数情况下,客户借助它非常迅速的找出数据库性能隐患点、排查出问题症结所在,这将无疑协助客户解决燃眉之急,可以大大降低风险和提高效率。

 

     先来分析下为什么数据库问题诊断和性能优化会非常难?

第一难:获取信息难,问题诊断和性能优化都需要依赖于大量的系统数据,甚至是长期的历史数据,只有基于完备的信息才能给出准确的解法。架构一套完善的数据库监控体系,可不是一件易事,信息收集的全面深入则就更困难了。

第二难:分析信息难,需要多年的经验才能给出准确的解法,也需要多样的场景才能覆盖比较全面的问题类型。经验与场景,一不好传承,二变化较快,三他人理解不易。

第三难:优化手段难,找出问题了,知道怎么办了,也并不意味着就能马上解决问题,甚至有些解法是要深入到数据库引擎层代码优化,这可不是一朝一夕就能做好的。


CloudDBA优势

    阿里云数据库CloudDBA 是如何全面解决这三个问题的呢?

 

CloudDBA 完备的性能监控数据

我们当然可以自己搭建监控体系,采用通用开源软件来搭建,但这都意味着投入成本,同时需要对相应的系统比较了解。有些监控系统还无法满足特定业务需要,为了满足场景诉求必须要二次开发,企业之间的大量通用重复劳动是肯定存在的。常见的监控如下图图一和图二,图一是主动拉取监控信息方式,图二是由agent定期上报监控信息形式,一般图二架构也可以是图一基础上增加agent部分。

 

CloudDBA数据库性能优化获取监控数据1CloudDBA数据库性能优化获取监控数据2

 

阿里云数据库监控体系要更深一步,监控内容面更广,这就要得益于多年阿里云数据库团队锲而不舍对技术的追求。同时监控手段更先进,内核团队针对监控特别优化,我们可以获取完整的数据库执行语句详情和数据库全局快照,而对性能影响微乎其微,最多带来2%的性能差异。同时我们利用阿里云大数据技术能力,实现了冷热数据的计算加速,大量历史数据可以快速完成计算工作,可以很快给出分析结果,架构如下图三,增加了从数据库到日志文件的写入部分强调阿里云特有的内核日志优化工作。

 

CloudDBA数据库性能优化获取性能数据3


CloudDBA 智能化学习分析手段

阿里云数据库上运行着各行各业的数据库系统,覆盖了海量业务场景,阿里云DBA专家多年优化诊断经验就沉淀在CloudDBA的规则引擎系统上,通过规则引擎可轻松实现一种业务场景的问题、条件与解法的研发。并且我们利用了机器学习能力,自动去抽象各业务的独有特色,可以很方便的实现独立业务和普适规则的匹配,为业务特有场景轻松推荐最优的优化解法。由于阿里云业务的快速发展,目前数据库实例已经超过10万,规则引擎中的优化模型越来越完备,而差异算法可轻松识别新的业务场景,若真出现没有遇见过的“遗漏”,我们也可最快兼容。

图四就是CloudDBA的四大引擎工作架构图,请注意专家知识库并不是文档,而是规则引擎工作的原材料,这是阿里云数据库服务海量实例的特有数据。


CloudDBA数据库性能优化架构


四大引擎解释说明如下:

规则引擎:后台灵活配置各种性能规则,问题、条件和解法,可快速实现新场景的优化方案开发。

性能分析引擎:实时分析潜在性能风险,每种性能都有预先可定制的性能规则。

实时诊断引擎:实时响应用户诊断具体对象问题,每个资源都有一系列定制化的检查规则列表。

SQL优化引擎:基于历史数据,分析SQL、事务、锁等核心DB资源的性能问题,并给出优化改进建议。

 

CloudDBA 完备的调优与诊断工具

依托于云数据库的强大内核,使得在不影响业务的前提下调优与诊断变得非常简单。云数据库天然的弹性能力,无论升级或者调优对用户影响都极小。阿里云数据库内核团队,长期对技术孜孜不倦的追求,优化了大量的引擎层代码,如热升级、连接池、online DDL优化、热点行优化、在线限流工具、并行复制、秒杀补丁等,这使得调优和解决问题变得相当简单,绝大数情况您只需要一点就可以解决问题。

 

CloudDBA功能概述

CloudDBA根据用户使用场景,从时间维度将功能切分为两大块,分别是一个专注于当下的问题诊断和SQL操作相关功能,另外一个则专注于对历史数据进行全面分析产出系统性能优化方法功能。但这两者也不是严格的根据时间切割,如SQL操作中对语句性能的分析,也会参考过去历史性能数据产出最优的优化分析。

问题诊断功能,描述数据库当下的状态,性能问题、其他问题都会以用户一种可见资源表现出来,如CPU、连接数等。CloudDBA以这类面向用户的资源为起点,分析可能引起该问题的原因,分析逻辑在后台做到可配置,开发新代码会非常的容易,并且分析逻辑会不断扩张。我们将每个用户可见资源(如CPU)定义为一个诊断项,每个诊断项在后台规则引擎中会定义一些检查条目,当诊断时会逐个检查条目进行诊断,没有问题就忽略,有问题就会返回给分析引擎和诊断引擎,这两个引擎会结合历史数据给出结果。

第一版CloudDBA问题诊断集合包括 CPU、空间、慢SQL、锁信息、热点表等基础内容。


CloudDBA获取锁信息


性能优化功能,用户可直接通过SQL操作来检查语句在指定数据库中执行是否会存在性能隐患,用户可以查看执行计划、诊断SQL获取优化结果,当然用户亦可在操作界面直接执行SQL查看结果。

CloudDBA基于内核优化的SQL审计文件,可快速查询指定时间段内的TOP SQL和问题事务。SQL语句可以根据执行次数、执行时间等多种方式排序,事务信息可找出事务包含的语句、事务执行次数、事务执行时间等信息,方便快速定位问题事务。


CloudDBA获取SQL性能


最后可基于时间段快速创建一份数据库诊断报告,报告可下载可分享,包含了数据库的全面分析,内容丰富如涵盖了索引、外键、死锁、连接、事务、SQL语句、空间、只读延迟等信息。一份报告就是一份数据库的快照,它涵盖了问题诊断和性能优化,如下图中展示了一个问题SQL的报告内容:


CloudDBA产出诊断报告


总结

阿里云数据库推出CloudDBA目的是协助客户定位解决问题,并将大量常见问题的诊断优化自动化,利用机器学习、大数据手段快速复制阿里云资深DBA的成熟经验,服务于云上企业。最后我们想说,让用户更高效使用云数据库是我们追求的唯一目标,且我们致力于将CloudDBA打造为云数据库的标准配置,而且我们不断学习不断改进永久迭代。


您可能还喜欢

历年双11实战经历者:我们是如何做数据库性能优化及运维-CloudDBA和天象

CloudDBA初体验:SQL优化建议

目录
相关文章
|
3天前
|
SQL 存储 监控
obdiag:一款OceanBase 数据库诊断的利器
本次分享的主题是obdiag:一款 OceanBase 数据库诊断的利器,由蚂蚁集团 OceanBase 技术专家汤庆分享。主要分为四个部分: 1. OceanBase 概述 2. Obdiag 项目价值 3. Obdiag 设计与实现 4. Obdiag 未来规划
28 14
|
2天前
|
运维 关系型数据库 分布式数据库
阿里云PolarDB:引领云原生数据库创新发展
阿里云PolarDB引领云原生数据库创新,2024云栖大会将分享其最新发展及在游戏行业的应用。PolarDB凭借弹性、高可用性、多写技术等优势,支持全球80多个站点,服务1万多家企业。特别是针对游戏行业,PolarDB助力Funplus等公司实现高效运维、成本优化和业务扩展。通过云原生能力,PolarDB推动游戏业务的全球化部署与快速响应,提升用户体验并保障数据安全。未来,PolarDB将继续探索AI、多云管理等前沿技术,为用户提供更智能的数据基础设施。
|
2天前
|
SQL 运维 关系型数据库
数据库自治服务DAS:云数据库高效运维的最佳拍档
数据库自治服务DAS是阿里云推出的高效运维解决方案,旨在简化复杂数据库管理。DAS基于机器学习和专家经验,提供自修复、自防护、自优化功能,涵盖多源数据库支持、丰富的应用场景及端到端运维能力。其企业版引入AI技术,实现智能诊断与优化,显著提升数据库稳定性、安全性和性能。通过自动化处理常见问题,如SQL优化、容量规划等,DAS大幅降低人工干预需求,缩短故障恢复时间,助力企业实现高效、智能化的数据库运维管理。
|
24天前
|
存储 人工智能 数据管理
|
10天前
|
关系型数据库 分布式数据库 数据库
1月17日|阿里云云谷园区,PolarDB V2.0技术沙龙,畅聊国产数据库
为了助力国产化项目顺利推进,阿里云邀请企业开发者和数据库负责人到云谷园区,与PolarDB V2.0技术专家面对面交流。扫描海报二维码报名,我们将根据信息为您申请入园。欢迎参与,共同探讨PolarDB的最新技术和应用!
|
1月前
|
弹性计算 关系型数据库 数据库
自建数据库迁移到云数据库实操
本课程详细介绍了自建数据库迁移到阿里云RDS的实操步骤。主要内容包括:创建实例资源、安全设置、配置自建的MySQL数据库、数据库的迁移、从自建数据库切换到RDS以及清理资源。通过这些步骤,学员可以掌握如何将自建数据库安全、高效地迁移到云端,并确保应用的正常运行。
138 26
|
13天前
|
运维 关系型数据库 MySQL
体验领礼啦!体验自建数据库迁移到阿里云数据库RDS,领取桌面置物架!
「技术解决方案【Cloud Up 挑战赛】」上线!本方案介绍如何将自建数据库平滑迁移至云数据库RDS,解决业务增长带来的运维难题。通过使用RDS MySQL,您可获得稳定、可靠和安全的企业级数据库服务,专注于核心业务发展。完成任务即可领取桌面置物架,每个工作日限量50个,先到先得。
|
17天前
|
存储 人工智能 数据管理
媒体声音|专访阿里云数据库周文超博士:AI就绪的智能数据平台设计思路
在生成式AI的浪潮中,数据的重要性日益凸显。大模型在实际业务场景的落地过程中,必须有海量数据的支撑:经过训练、推理和分析等一系列复杂的数据处理过程,才能最终产生业务价值。事实上,大模型本身就是数据处理后的产物,以数据驱动的决策与创新需要通过更智能的平台解决数据多模处理、实时分析等问题,这正是以阿里云为代表的企业推动 “Data+AI”融合战略的核心动因。

相关产品

  • 云数据库 RDS