<< 返回新闻资讯

ACDU·中国行「成都站」完美收官,云和恩墨熊军会上详谈 MogDB 数据库性能管理之道

2023年10月17日
A
C
D
U
,
,
,
,
M
o
g
D
,
42
 

 

 

“锦江秋雨芙蓉老,笠泽春风杜若芳”,在这秋高气爽的锦官城中,由中国数据库联盟ACDU和墨天轮联合举办的【ACDU中国行·成都站】已于10月14日顺利召开,云和恩墨副总经理兼数据库生态产品群总经理熊军在会上分享了《MogDB / openGauss数据库性能管理之道》主题演讲。

 

 

谈到数据库性能管理,ChatGPT给出了它的答案:“性能监控、索引优化、查询优化、缓存策略、分区与分表、升级数据库软件、资源管理、分布式架构、硬件升级、定期维护”,这些方式已经基本覆盖了能够提升数据库性能的方法,但并不全面,熊军额外补充了一点“通过SQL审核进行前置性能管控”。随后,熊军对以上部分数据库性能管理方法进行了详细解读。
云和恩墨副总经理兼数据库生态产品群总经理 熊军
性能监控是保证数据库性能的最有效的手段,对此我们用两个步骤可以对数据库建立监控:一是通过指标进行监控,对此云和恩墨技术专家已经整理好完整的监控指标并贡献给了社区(详情请参考 https://gitee.com/opengauss/openGauss-prometheus-exporter/blob/master/og_exporter_default.yaml;二是使用grafana+prometheus就能快速搭建 MogDB / openGauss 的可视化监控系统。
监控系统可视化界面
除此之外,我们常常通过性能视图来获取诊断性能的可观测数据,如通过ASH查询过去5分钟最消耗资源/等待事件最多的SQL语句(TOP SQL),但通过这样的方式获取到的SQL经过了“参数化”,不利于SQL的诊断,以及数据只是当前的最新数据,那么有没有更好的数据呈现方式和分析能力呢?答案是有的。云和恩墨数据库云管平台zCloud能够通过一段时间内(如1分钟)的活动会话总数/除以采样次数为平均活动会话数(AAS)结合等待事件的方式,能够快速识别到性能问题点,如负载升高/变化、异常等待事件以及对应的SQL语句等;并且它还能够对执行计划改变和锁阻塞等影响性能的问题进行记录,形成可视化趋势图表,然后进行SQL语句下钻分析。
zCloud性能分析界面
升级数据库软件,通过新增的性能特性来提升性能也是有效手段,例如 MogDB 产品从3.1版本引入自研创新特性“BTREE索引压缩技术”,该特性旨在减少索引中重复键的存储空间占用,降低存储成本。同时,经过压缩的索引空间占用减小,可以将更多的索引数据缓存在内存中,减少查询流程中索引的磁盘IO,大幅提升查询性能。对此熊军举了一个测试例子进行说明:在插入160万行数据的情况下,没有经过索引压缩的普通表空间占用为80M,而创建btree压缩索引后的空间占用仅10M,空间节省和IO次数减少将近90%。
数据发生故障以致影响性能的原因往往有多种,熊军表示:“经数据统计,数据库的故障有19.2%是由Bug引发的,36.4%是由运维原因引发,剩余44.4%则是由不良SQL引起的。Bug和运维引发的问题可以通过巡检、升级数据库、按规范设置参数、规范运维等手段来规避解决,却无法通过以上手段解决SQL语句问题。但只要在上线前的开发阶段对SQL质量进行审核,就可以前置化规避数据库性能风险。”云和恩墨将在数据库领域耕耘十数年积累的用户经验和专家经验,以及SQM产品不断建立的规则总结归纳,形成了《SQL规范标准》,规范了业务SQL编写标准,从根源提升业务SQL质量;同时SQM还支持SQL的全量/增量审核,将问题SQL发现时间从“周”降低为“天”,大幅提升问题处理效率。
除了熊军带来的精彩分享,还有 Oracle、PostgreSQL、MySQL 技术路线的专家分享了数据库技术的最新变化与趋势,近四个小时的会议时间,在场观众一直气氛高涨,问答环节热烈火爆。云和恩墨将继续跟随ACDU·中国行的步伐,陆续抵达更多城市,与众多数据库从业者、技术爱好者畅聊数据库技术的发展。