百香果有什么功效与作用| 好运连连是什么意思| 动态是什么意思| 市政协副主席是什么级别| 天丝是什么| 兔日冲鸡什么意思| 肩周炎不能吃什么食物| 庄周梦蝶是什么意思| 阳历7月份是什么星座| 什么鸟会说话| 西瓜配什么榨汁好喝| 麻痹是什么意思| 结婚60年是什么婚| 艾灸肚脐有什么好处| 七月份有什么节日吗| 点到为止是什么意思| n1是什么意思| 昀是什么意思| 感冒了吃什么水果好| 伟岸一般形容什么人| 眉毛下方有痣代表什么| 小便有血尿是什么原因| 浪迹天涯是什么生肖| 真丝香云纱是什么面料| 井底之蛙的寓意是什么| 90年属什么生肖| 缺蛋白质吃什么补得快| 冰丝皱是什么面料| oto是什么意思| 拉拉裤是什么| 痛风可以吃什么水果| 减肥晚上吃什么比较好| 月经推迟不来吃什么药| 轰趴是什么意思| 手指甲凹凸不平是什么原因| 蛇缠身是什么病| 用什么自慰| 梦见儿子小时候是什么意思| 法会是什么意思| 什么原因引起痛风| 金箔是什么| 玉米须有什么功效| 三界牌是什么| 泌乳素高有什么症状| 朱元璋属什么生肖| phr是什么词性| 疤痕体质是什么| 什么叫混合痔| 阿胶是什么做的| 梦见孩子被蛇咬是什么意思| 处女座男和什么星座最配| 冬是什么生肖| 妇科炎症小腹坠痛吃什么药| 类风湿因子是什么意思| 低血糖的症状是什么| 什么颜色的头发显白| 蒲公英泡水喝有什么功效| 芬太尼是什么药| r13是什么牌子| 领结婚证需要什么| 心肌供血不足是什么原因造成的| 总是放屁什么原因| 云南雪燕有什么作用| 型式检验是什么意思| 泥淖是什么意思| 赛治是什么药| 得了幽门螺杆菌是什么症状| 预祝是什么意思| 人得猫癣用什么药| 流产后吃什么水果最佳| 什么猫掉毛少| 胃胀气吃什么药见效快| 15岁属什么| 硬汉是什么意思| 产检都检查什么项目| 尿路感染 吃什么| 孩子打呼噜是什么原因| 木属于五行属什么| 吃鸡是什么意思| 经期吃芒果有什么影响| msi是什么比赛| 电饭煲内胆什么材质好| 特朗普为什么叫川普| 胰腺炎不能吃什么食物| 霉菌性阴道炎什么症状| 甲壳素是什么东西| 皮蛋吃了有什么好处和坏处| 空调滤芯什么牌子好| 红得什么| 芈月传芈姝结局是什么| 7月13日是什么星座| 什么水果能马上通便| 生育保险有什么用| 怀孕初期流产有什么症状| 中药学是干什么的| 中午是什么时辰| 早孕挂什么科检查| 端坐呼吸常见于什么病| 马叉虫是什么意思| 手指上的斗和簸箕代表什么意思| 辣椒炒肉用什么肉| 女孩叫兮兮是什么意思| junior什么意思| 脱落细胞学检查是什么| naoh是什么| 家里出现蟑螂预示什么| 干细胞移植是什么意思| 手掌红是什么原因| 斑是什么原因造成的| 女人喜欢什么样的阴茎| 松花粉是什么| 电磁炉滴滴响不加热是什么原因| 无字五行属什么| 观音坐莲是什么姿势| 鲨鱼为什么怕海豚| 善太息是什么意思| 弹性工作制是什么意思| 梦到生女儿是什么意思| 高硼硅玻璃是什么材质| 男人有美人尖代表什么| 一清二白是什么意思| 牙龈紫色是什么原因| 孕吐一般从什么时候开始| 夏天为什么不能喝中药| 24k是什么意思| 宝五行属性是什么| 什么是甲状腺结节| 情感是什么意思| ltp什么意思| 脸上发麻是什么原因| 老酒是什么酒| 前纵隔结节是什么意思| 减肥早餐适合吃什么| 单独玉米粉能做什么| 健康证都查什么传染病| 没有舌苔是什么原因| 吃维生素b6有什么好处和副作用| 副团长是什么军衔| 生吃大葱有什么好处和坏处| 口交是什么| 尿酸高的人不能吃什么| 印度为什么那么热| 公务员什么时候退休| 黄芪和枸杞泡水喝有什么作用| 小五行属什么| 鹦鹉拉肚子吃什么药| 肺结节吃什么| 李子什么颜色| 妲己是什么生肖| 热玛吉是什么意思| 灰姑娘叫什么名字| 匹维溴铵片治什么病| 子宫肌瘤吃什么药好| 四个木字念什么| 创面是什么意思| 劳动局全称叫什么| 减肥早餐吃什么| 胡子长的快是什么原因| 晏字五行属什么| 雷声什么| 立秋什么意思| xg是什么意思| 乍一看是什么意思| 周瑜和诸葛亮是什么关系| 情趣内衣是什么意思| juicy是什么意思| 4月21日什么星座| 缺磷吃什么食物好| 血压高为什么| 什么是大姨妈| 腹部b超能检查什么| 4.6什么星座| 宝贝疙瘩是什么意思| 二月初五是什么星座| 羊胎素是什么| 胆结石什么原因引起的| 土是什么生肖| 喝中药尿黄是什么原因| 腿毛长得快是什么原因| 隐血弱阳性是什么意思| 痔疮看什么科| 古代男子成年叫什么| 冬瓜吃了有什么好处| 四月份是什么星座| 断层是什么意思| 右肾盂分离是什么意思| 给事中是什么官| 顾里为什么和席城睡了| 不修边幅是什么意思| 咳黄痰吃什么药好得快| 吃什么补胶原蛋白| 什么香什么鼻| hpv39阳性是什么意思| 胃胀打嗝是什么原因| 为什么夏天容易掉头发| 为什么乳头会变黑| 风湿性关节炎挂什么科| 甘草有什么作用| 2015属什么生肖| 压迫硬膜囊是什么意思| 什么时候期末考试| 炭疽是什么病| 梦见杀蛇是什么预兆| 阳光灿烂是什么意思| 脚上真菌感染用什么药| 承情是什么意思| 日新月异是什么意思| 牙龈肿痛用什么药好得快| 红红的什么| 总是爱出汗是什么原因| 女人银屑病一般都长什么地方| 长水痘可以吃什么菜| 三八妇女节是什么生肖| 卡介疫苗什么时候打| 儿童多动症挂什么科| icu病房是什么意思| 什么是靶向药| 月经来头疼是什么原因引起的| 天德月德是什么意思| 现在领结婚证需要什么| 普通的近义词是什么| 抗心磷脂抗体是什么意思| 辣椒炒肉用什么辣椒| 左心室肥大是什么意思| 金国人是现在的什么人| 7月15是什么节| 范仲淹号什么| 膝盖内侧疼吃什么药| 母鸡学公鸡叫什么征兆| 心率过低吃什么药| 内分泌紊乱有什么症状表现| 性功能下降吃什么药好| 车厘子与樱桃有什么区别| 肾火旺吃什么药| 鱼油有什么好处| 三里屯有什么好玩的地方| 70a是什么尺码| 霉菌用什么药效果好| 吐槽是什么意思啊| ph值是什么意思| 肠绞痛什么原因引起的| 什么是人彘| 嘴苦嘴臭什么原因| 坐高铁不能带什么| 豆腐有什么营养| 复辟什么意思| 什么鸡没有毛| 难以入睡是什么原因引起的| 倒钩是什么意思| 芥子是什么| 若叶青汁有什么功效| 雅痞是什么意思| 孕妇抽筋是什么原因引起的| 饮片是什么意思| 容易出汗什么原因| 缜密是什么意思| 仰天长叹的意思是什么| 番茄是什么时候传入中国的| tct检查什么| 关节痛挂号挂什么科| 包皮手术挂什么科| 过期牛奶有什么用途| 11月生日是什么星座| 孕妇吃辣椒对胎儿有什么影响| 百度

【婚姻经营】婚姻专家列出的美好婚姻10个黄金标准

开发者社区 > 博文 > Cleverdb | 数据库性能展示平台构建之路
分享
  • 百度 其三,赵睿单场投中8球,创造生涯最高进球数纪录。

    打开微信扫码分享

  • 点击前往QQ分享

  • 点击前往微博分享

  • 点击复制链接

Cleverdb | 数据库性能展示平台构建之路

  • 京东技术
  • 2025-08-05
  • IP归属:北京
  • 12333浏览

文章转载自公众号 京东数科技术说,作者 陈予诚

随着业务的快速发展,数据库实例的数量也呈指数级增长,用户需求变的越来越多,出现的问题也随之增多。纯靠人力处理线上运维问题已不现实了,同时DBA根据需要更倾向于关注核心业务数据库;但众多刚上线且发展迅速的应用会造成长尾效应,这种实例更需人为关注,但是往往会被忽略,可能会造成巨大的影响。

作者团队运维过数量众多的数据库,遇到过许多的问题,积累了很多的经验,那么如何将经验最大限度共享出去呢?如何更好的去摆脱长尾效应带来的危害呢?作者团队决定做Cleverdb的初衷就是帮助用户可以自主查看db出现了什么问题?是什么原因导致的?如何去优化改善这个问题?将经验产品化,将DBA由繁重枯燥的解答问题、排查问题中解脱出来,去做更多的事情。

  Cleverdb的具体功能点  

11.jpg

总体上来说,Cleverdb平台要具备使用者通过平台能完整详尽的了解数据库的状态指标的功能。

目前,平台可以提供以下具体功能:

  • 大盘统计概览:包括主从延迟、topo结构、机房分布、热力图等

  • DB画像:实例健康评分、实例问题检测、实例参数展示、容量使用等

  • 慢查询多维度分析:Top SQL、执行计划、慢SQL时间分布、索引建议等

  • 性能曲线展示:实例级别、机器级别

  • 会话事务分析:未提交事务、事务锁、MDL锁、活跃会话、多维度连接数展示

  • 实例空间分析:空间使用量预测、空间碎片分析、无用冗余索引提示

实时监控等功能,用户可以通过平台迅速找到db的性能隐患,快速排查解决问题。

  Cleverdb的整体架构  

22.jpg

  数据采集  

针对数据库来讲,无论是诊断问题发生原因,还是优化一个待解决问题都需要完备的监控数据来支撑,很多时候还需要去对比之前的历史数据才能分析出结果。因此构建一个完善可靠的数据监控系统就是重中之重。以下是监控数据采集上报系统的架构图:

33.jpg

秒级监控系统smonitor部署在每一台机器上,作为Client端去定期采集数据(sys status & instance status),并添加进程级别的监控。针对单机多实例部署情况时,能精细化的采集到每一台实例的具体资源使用。数据部分采集到后经过处理落到本地磁盘,并主动post到server端。这么做的目的是确保不会因为网络的抖动或者其他原因导致部分监控数据没有保留到。

Smonitor web端设计为弹性扩展,作为数据接收端,同时肩负着数据清洗、评分计算、监控报警等功能。

Smonitor scheduler定制了一些任务并主动触发smonitor web去进行计算然后回写到存储数据库中。

因监控数据种类的不同将这些清洗后或计算好的数据存进了不同类型的db,并对接大数据集群对历史数据进行大数据分析,构建机器学习框架去预测未来的某种走势。例如,对不同类型的应用(计算密集型、io密集型、存储型等)去自适应的调整cpu或磁盘的权重比例,并根据过去一段时间的评分数值来预测未来一段时间的评分数值,当预测评分数值明显下跌时会触发预警机制,这样可以将危险扼杀在摇篮中而不是等待发生后再去解决。

  评分系统  

上面说到了对db实例进行打分,设计一套评分系统,根据不同的db使用场景、不同的业务类型、不同的db分级去为每一台db实例进行评分,刻画画像。将数据库的核心指标(活跃连接数、总连接数、慢查询数、innodb_rows等)以及机器的核心指标(CPU、内存、磁盘、负载等)都纳入到了评分系统中,去为数据库的健康状态进行评分,并针对刚才说的不同的db类型设置不同的分数阈值,将db的健康状态更真实更完整的呈现给用户。

用户可以通过首页的评分热力图直接观察到哪个实例的总评分低于正常阈值,点到详情页中又可以通过各个评分项的雷达图清晰的发现哪一项指标出问题导致了总评分过低,这样就可以很快很精准的定位问题,并进行解决。评分系统的架构如下图所示:

44.jpg

  慢查询分析  

对于数据库的使用者来说,他们可能更关心的是慢查询的状况,例如查询时间,发生次数,扫描行数等。慢查询整体的架构功能图如下所示:

55.jpg

将慢查询发到kafka中,使用sparkstreaming去对慢查询raw data进行清洗分析,对相同类别的SQL进行分组,并对统计数据进行分析,提供不同时间维度的SQL执行次数,扫描行数,执行时间等统计维度的数据。

针对慢查询,Cleverdb提供查看当前的SQL执行计划。同时根据统计信息,提炼出了慢查询的时间分布情况,用户可以看到自己的慢查询都分布在哪些时间区间内,是0.1s-0.5s还是1s以上,并根据统计信息值提炼出Top SQL与急需优化的慢查询。

因为一个查询出现在慢查询中并不一定代表这个查询本身的效率低下,有可能是刚好处于当前实例资源较为紧张的情况下,平时很快的查询被某些critical级别的慢查询给拖累。为了方便用户定位问题,将这些warning级别和critical级别的慢SQL直接提炼出来展示给用户,这样也减少了用户去一个个翻阅慢查询并进行优化的时间耗费。

此外,并不一定所有的研发人员和用户对SQL的执行模式很精通,也不是所有的SQL都会走索引,根据经验会对SQL进行分解和改写并去探测在哪些列上添加索引会尽量减少扫描行数,并给出添加索引的优化建议,用户就可以直接根据提示添加索引。

  会话分析与空间分析  

1、会话分析

经常有研发同事来提问,他们的库是不是锁了能不能帮忙看一下。因为框架原因或代码问题,数据库中经常会出现未提交的事务或者批量更新时造成的锁等待情况。Cleverdb平台提供了详尽的会话分析,用户可以查看当前db中有没有锁等待的语句,是事务锁还是表级锁还是MDL锁,还可以查看当前的长事务会话与未提交会话,并给用户kill权限,可自行kill掉需回滚的会话。

2、空间分析

用户对于空间信息的需求也很强烈,db的扩容不能像应用那样随时扩容,所以在磁盘使用空间达到报警阈值之前,需要提前准备扩容的事宜,如临近双十一临时准备扩容就很被动。平台对实例空间和实例所在物理机空间都做了详尽的分析,用户可以看到实例具体磁盘空间大小,所占当前物理机的磁盘空间比率大小,并能知道数据空间、日志空间、备份空间的大小。

另外,因为频繁的插入删除会造成表空间出现大量的磁盘碎片,分析出存在大量磁盘碎片的表,并提示给用户进行碎片回收可以回收多少空间,做到对空间的最大利用。

同时,标记出用户实例中未使用到的索引以及冗余索引,提示用户去将无用的索引进行删除,减少磁盘空间的占用。

最后,赋权给用户自行回收碎片和临时清理binlog文件的功能,会有守护进程去监控回收空间的操作,避免造成因MDL锁导致实例无法提供访问的问题,也会检测binlog文件是否已备份、是否已被拉取到从库,提供给用户可以去purge的binlog,临时减轻机器的磁盘压力。

3、历史数据分析查询

上面提到的大部分都是关于trouble shooting相关的使用情境,另外用户还有一大类使用情境是对于历史数据进行分析查阅,去进行性能上的优化。所以Cleverdb平台也提供了详尽的历史信息曲线的查阅,例如tps/qps、innodb_rows、增删改查的次数、cpu使用率、网络使用率、io使用率、连接数和活跃连接数等历史曲线。用户可以在系统出现问题时,查看当时的数据库状态和机器性能状态,例如活跃连接数多可能是并发较高问题,磁盘io压力较大可能是写入量过大的问题等,通过对比查看能更好的分析出问题所在,并得出优化方案。

最后,在平台里加了个小彩蛋就是DBA小机器人,因为DBA总会被人问各种各样类似的问题,因此将问题和答案整理出来,并对一些数据库开发规范和数据库基本的原理进行了简短的解释,用户可针对基本的问题提问机器人,减少了DBA的重复回复工作。

  结语  

作者团队推出这个平台的初衷是为了减轻DBA们的重复工作量,将更多的时间用到学习新技术与架构上。随着工作的深入,就愈发的偏向于更好的服务用户;更好的将经验最大化;更好的帮助用户定位和解决问题;在减少用户精力投入的基础上,提供更好更完美的服务。

阴阳屏是什么意思 湿热是什么原因引起的 网球肘用什么药最有效 飞机什么不能带 垂线是什么
张顺的绰号是什么 脚底起水泡是什么原因 茉莉花长什么样 牙齿上有黄斑是什么原因 碘131是什么
什么是再生纤维素纤维 舌头肥大有齿痕是什么原因 吃栗子有什么好处 腮腺炎吃什么药 女人吃猪肝有什么好处
为什么会得红斑狼疮 舌有裂纹是什么原因 十二月六号是什么星座 鼻烟是什么 扁桃体肿大是什么原因引起的
一个月的小猫吃什么hcv8jop4ns6r.cn 前列腺特异性抗原高是什么原因wmyky.com 肛周瘙痒用什么药zhiyanzhang.com 什么是处女hcv8jop0ns1r.cn 什么植物和动物像鸡hcv7jop9ns4r.cn
性早熟是什么意思hcv8jop3ns0r.cn 油菜花像什么hcv8jop2ns8r.cn 柠檬什么季节成熟hcv8jop3ns4r.cn 清洁度三度什么意思ff14chat.com 庆字五行属什么hcv9jop5ns5r.cn
男生吃菠萝有什么好处hcv9jop0ns8r.cn 对宫星座是什么意思hcv8jop3ns9r.cn 血浓度高是什么原因hcv9jop4ns1r.cn 肝阳虚吃什么中成药hcv8jop4ns1r.cn 雍正叫什么名字hcv9jop1ns0r.cn
小寄居蟹吃什么hcv8jop0ns6r.cn 变化不著是什么意思hcv8jop3ns0r.cn 2018 年是什么年hcv8jop3ns2r.cn 1972年属鼠五行属什么hcv7jop9ns4r.cn 琛字五行属什么hcv9jop0ns0r.cn
百度