数据库AIOps 运维平台的基础肯定是大量的历史监控数据,数据的收集规则与建模规则应该怎么设计呢?

数据库AIOps 运维平台的基础肯定是大量的历史监控数据,使用这些数据对各种AI模型进行训练,请教孔老师这些数据有什么特殊的收集规则吗?比如,收集频度,看您介绍 DB2 的每个指标您的系统都会收集,收集频率设置多长时间一次,才能尽可能低减小对生产系统性能的影响呢?监控数据的数...显示全部

数据库AIOps 运维平台的基础肯定是大量的历史监控数据,使用这些数据对各种AI模型进行训练,
请教孔老师这些数据有什么特殊的收集规则吗?
比如,收集频度,看您介绍 DB2 的每个指标您的系统都会收集,收集频率设置多长时间一次,才能尽可能低减小对生产系统性能的影响呢?

监控数据的数据仓库建模这方面的设计规则,能谈谈吗?

收起
参与7

返回anikikong的回答

anikikonganikikong  数据库运维工程师 , 中国民生银行

数据库智能运维的基础确实是需要采集历史监控数据。每种数据库都提供了各种工具、系统视图,表函数等监控方法和接口。因此采用什么方式来获取监控数据是需要考虑周到的:

  1. 减少对性能的影响,采用轻量级监视接口。采数频率一般为 3-5 分钟。
  2. 采用 sql 可调用的通用接口,简化数据采集。可以远程访问采集数据,不需要在数据库服务器上安装采集服务。管理好数据库采集用户的权限,仅保留访问系统试图的最低权限。
  3. 考虑向后兼容性,采用产品推荐的监控模式。例如 DB2 建议使用各种表函数,信息准确。
  4. 采集数据分为累加型和当前型。累加型数据需要做差分并且基于采集间隔做平均,保证数据可比性。

采集的数据需要存放到智能运维平台。平台内通常只保存几个月的数据,历史数据需要归档到大数据平台,例如 ES 里。即便是几个月的数据,在系统多,指标多的情况下,数据量也是很可观的。因此本地数据的存放也需要考虑很多方面:

1. 数据分片存储还是集中式存储。是否采用时序数据库方便查询等。

2. 集中式存储建议采用分区表,列存等等优化方案。

3. 数据保存周期。建议 3 到 6 个月。解决好数据膨胀问题。

实时数据采集处理,各类模型运算,前台历史数据查询,这些需求都穿插在一起,性能问题和高可用问题需要兼顾好。

银行 · 2019-12-18
浏览3164
atpeace331 邀答
  • 孔老师,您百忙之中抽空回答我的问题,多谢了,孔老师!!! 我的理解是: 1、采集接口:轻量级内存访问(例如:MON_GET_*),SQL调用接口,累加指标做差分统计,当前状态指标。采集接口这块涉及XML接口 和 Event monitor吗? 2、采集数据存放主要考虑 性能 及 高可用。性能方面您说的很清楚了,高可用您是采用什么方案呢?
    2019-12-19

回答者

anikikong
数据库运维工程师中国民生银行
擅长领域: 数据库灾备双活

anikikong 最近回答过的问题

回答状态

  • 发布时间:2019-12-18
  • 关注会员:2 人
  • 回答浏览:3164
  • X社区推广