上个月我去一家互联网公司采访,运维总监老张跟我倒了一肚子苦水。他说现在系统每天产生的监控数据已经超过 50 TB,光告警信息就有十多万条,团队七八个人天天盯着屏幕,结果该出的故障还是出了,该背的锅还是背了。他指着墙上贴的“数据驱动运维”几个大字,苦笑着说:“这不叫数据驱动,这叫数据淹死。”老张的处境,其实在行业内并不少见。很多公司花大价钱上了各种监控、日志、APM 系统,数据是有了,但质量参差不齐,重复、缺失、混乱的问题比比皆是。运维数据治理,这个词听起来很专业,说白了就是给这些数据“洗个澡、排个队、分个类”,让它们真正能干活,而不是躺在硬盘里吃灰。

我自己干过几年运维,深知数据治理为什么这么难。运维数据来源太杂了:服务器指标、网络流量、应用日志、数据库慢查询、用户行为数据,每类数据的格式、采集频率、存储方式都不一样。有的是结构化的,比如 CPU 利用率;有的是半结构化的,比如 JSON 格式的日志;还有纯文本的,比如系统报错信息。这些数据就像一堆混在一起的乐高积木,颜色、大小、形状都不统一,想拼成完整的模型,得先花时间分拣。更麻烦的是,很多数据天生就有缺陷。比如监控系统因为网络抖动丢了几个采样点,日志因为磁盘满被截断,APM 因为采样率设置不合理漏掉关键请求。这些问题如果不处理,数据分析结果就会出错,告警阈值再精准也白搭。
数据质量的问题,我见过太多血淋淋的教训。有个做电商的朋友,促销季发现数据库响应时间突然飙升,监控图上显示 IO 等待高达 80%。运维团队连夜扩容,结果问题根本没解决。后来一查,原来是某个日志采集 agent 出了 bug,把错误的时间戳写成了乱码,导致监控系统把正常请求也算成了慢查询。这一通折腾,白白浪费了十几万的云资源费用。还有一次,某金融公司因为数据治理不到位,把测试环境的告警误送到了生产环境的告警通道,结果半夜三点全员被叫醒处理假故障,第二天早会统计时发现,当晚真正的生产故障被淹没了。这些案例说明,运维数据治理不是锦上添花,而是雪中送炭。数据不准,工具再好也是瞎子摸象。
那到底怎么治?我跟几个资深同行聊过,大家的共识是:先做减法,再做加法。所谓减法,就是先把没用的数据干掉。很多公司的监控系统默认全量采集,连服务器风扇转速、UPS 电压这种十年用不上一次的数据都存着。这些数据不仅占存储,还污染分析模型。应该根据业务场景,把数据分成“必采、按需采、不采”三个等级。比如核心交易链路的 QPS、错误码、响应时间是必采的;某些后台批处理任务的资源消耗可以降低采样频率;而基本不变的静态信息,如服务器型号、IP 地址,只需更新一次,别每天往数据库里塞。做完减法后,再根据实际需求补充缺失的维度,比如增加业务层面的标签,让运维数据能和业务指标关联起来。
数据标准化是另一块硬骨头。运维圈子有个老梗:同一个指标,不同系统起的名能让你怀疑人生。比如“请求数”,在 Nginx 日志里叫 ,在 Kubernetes 里叫 ,在业务系统里又叫“总调用次数”。三个数据其实是一回事,但因为没有统一命名,分析时根本无法对账。标准化的第一步,是建立一套运维数据字典,明确每个字段的含义、类型、取值范围、采集方式。这一步听起来简单,实际却非常繁琐,需要运维、开发、架构等团队坐在一起,把每个数据项的“身份证”办下来。但一旦办成,后续工作就会顺畅很多。比如告警降噪,如果字段统一,就可以直接用规则引擎做关联分析,不用再写一堆 if‑else 去匹配不同格式的字段名。
数据治理还有一个绕不开的环节:数据生命周期管理。运维数据有个特点,热数据时效性极强,冷数据存储价值极低。比如实时告警数据,超过 5 分钟就失去意义;性能指标数据,超过 7 天基本只剩趋势分析的价值;而日志数据,除合规审计需要保留半年以上外,其他场景下超过 30 天就很难再被查到。很多公司不分青红皂白,所有数据一律保留 90 天甚至更久,结果是存储成本飙升,查询性能下降。合理的做法是分层存储:热数据放在高性能 SSD 上,温数据转到普通 HDD,冷数据压缩后放到对象存储或归档。同时要设定清理策略,定期删除不需要的数据。千万别觉得“存着总有用”,数据多了没有治理,就成了数字垃圾场。
说了这么多技术层面的东西,其实最难的不是技术,而是人。数据治理这件事,没有哪个团队天生愿意干。运维团队觉得这是数据平台的事,数据平台觉得这是业务系统的事,业务系统又说数据不准是运维的错,结果形成了“三不管”。我认识一个治理做得比较好的团队,他们的做法是:从一个小切口开始,比如先治理最核心的 10 个监控指标,让这些指标的数据质量达标,然后用它们做出一个真正能降低故障 MTTR 的案例。有了实实在的效果,其他团队才愿意配合。这就像整理房间,不需要一天把整个家收拾干净,先把沙发上的衣服叠好、茶几上的垃圾清掉,看着爽了,才有动力继续搞下去。
说到底,运维数据治理不是一个项目,而是一种习惯。它不是买一套工具、定一堆规范就能一劳永逸的。数据在变,业务在变,系统在变,治理策略也得跟着调整。我见过最成功的团队,每周会抽一个下午专门复盘本周哪些数据出了问题,是采集器挂了、命名错了,还是存储满了。这个习惯坚持半年后,他们的数据准确率从不到 80 %提升到 99 %以上。更重要的是,团队里再也没有人抱怨“数据不准”,因为大家明白,数据不准不是别人的错,而是自己没管好。这种意识的转变,比任何技术方案都更值钱。下次面对一堆运维数据不知从何下手时,不妨想想老张那句话:别让数据淹死你,学会让数据为你干活。


