开发者学堂课程【AnalyticDB PostgreSQL 产品调优及最佳实践:监控阅读及使用】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/1232/detail/18394
监控阅读及使用
ADB PG 指标监控
目前 ADBPG 公有云控制台上提供了各种丰富的监控指标,包括实例维度的监控指标和节点维度的监控指标。从各个维度给客户看当前实例的状态,也可以通过一些监控指标来发现当前实例存在的一些问题。
实例维度的监控指标包括:
(1)连接数监控
(2)节点监控状态监控
(3)查询监控
(4)资源队列监控
(5)磁盘监控
节点机器维度监控指标包括:
(1)CPU 使用率监控
(2)IO 使用率监控
(3)内存使用率监控
(4)磁盘使用量监控
ABPG 监控指标——连接数
买实例的时候要选择节点买多少个,这个节点为计算节点用来存数据,买完实例后会送一个前端接入节点叫协调节点,协调节点可存PG信息,协调节点连接 GADB 拿到 circle 后生成计划然后下发给计算节点,协调节点的连接数规格一般都与选择的计算规格相对应,节点规格越小,送的前端连接数越少。可从监控看连接数有多少,如果超了会出现异常信息。
要解决问题要么调大连接数要么深配。但如果是资源不够导致,调大连接数也无法解决问题。活跃连接数和空闲连接数能里面包含空闲连接和实例连接。实例连接意味着用户连上了一直在查询,空闲连接意味着连上后一直不查放着也在连接处,但ADPG有空闲连接超时机制,默认是6个小时,如果连接6个小时没有工作,后台检测到就会回收。
因为连接处会占用资源,也可以更改默认时间。
如果用户连接 ADB PG 实例抛出 ERROR:Sorry,too many clients already 这个异常信息。由于 ADB PG默认的连接数 是500.当用户的连接数超出预设值时,就会触发上述异常,这是可以查看这个协调节点连接数
ADB PG 监控指标—节点健康
可以从以下界面查询ADBPG的节点是否健康:协调节点和计算节点.
控制台一般会实时监控修复异常的功能,将这个信息暴露给客户是为了尽量将信息透明化。
ADB PG 监控指标—查询状态
查询连接一般默认有资源队列,还有一个阻塞是PG生态,ADB PG是一个HTKP支持事务,它提供封锁协议,PG里面有几把锁,有些指标如果看不到可能是因为没有升级到最新版本,如果这个特性没有是因为前端没有展现被屏蔽掉。
查询状态主要可以看是否有查询在排队和当前的TPS/QPS。
ADBPG 监控指标一磁盘使用
一个是实例用了多少看存储水位,实例有一个锁定机制,当存储水位超过默认%90,它会进入保护状态,此时写不进去了。落盘就是在MPP计算过程中每个节点内存不能无限制的用,当发现因为内存发现计算量不够时则需要回去落盘,每个节点允许的落盘机制最大有60G,如果并发高或circle很复杂导致落盘它会写到磁盘,累加到一定程度,如果大于60G,后面任何circle再触发落盘,如果发现超过一个阈值它就会报错。
用户连接ADB PG实例抛出ERROR:workfile per query size limit exceeded这个异常信息。由于ADB PG默认的查询落盘文件大小60G.当用户的查询数据量太大落盘超过这个值,就会触发上述异常。如果写的过程中超60G的话,说明circle不是很优化,要么病化太高了,要进行一些调优。
ADBPG 监控指标—CPU 使用率
CPU使用率一个是实例,一个是节点,计算节点有CPU使用率。如果节点数很大,可以选择tops和bottoms。如果买的不是很多可以选择全部节点。看CPU使用率可以拉一个时间段看,如果在图中发现CPU一直在90%,则说明CPU可能不太够,这时候一般建议生个配。
如果该实例的CPU使用或者Mem使用一直都处在比如说90%的水位线以上的话。我们就可以建议用户垂直扩容。比如用户现在单segment的资源规格是2C16G的话,我们就建议先增加到4C32G规格
ADBPG 监控指标—IO 使用率
如果该实例的IO使用率一直都处在比如说90%的水位线以上的话,我们就可以建议用户扩容计算节点数。比如用户现在计算节点是4个的话。我们就建议先增加到8个。不一样的指标高度代表不同的问题。
ADBPG 监控指标一储存使用量
数据倾斜分析
如果所有计算节点的储存使用量是均匀的话,这里就应该是一条直线,表明数据在所有节点上的储存是一样的。
如果出现破折或者波浪线则存储不一样触发倾斜了,触发倾斜后会有一个诊断页面如下,它会将大于百分之20倾斜的表。
具体操作请参考官网文件:https://help.aliyun.com/document detail/284588.html