异常检测:为什么你的数据团队没有那么投入

交付可靠的数据产品并不一定是那么痛苦.

以下是一些最好的数据团队为什么以及如何向DevOps和站点可靠性工程寻求灵感,以实现前瞻性, 数据信任的迭代模型. 介绍:数据可靠性的生命周期.

想象一下,你是一名汽车修理工. 

一辆轿车开进你的车库,引擎噼啪作响. 

“怎么了?你问道,眼睛从桌子上移开.

司机摇下车窗. “我的车出了问题,”他们回答.

你想,描述得很贴切,一边擦着额头上的汗. 你的讽刺让你咯咯笑.

“我的车出毛病了.他们重复着,这一次没有收缩. 

在四处检查了几个小时后,你发现车子的火花塞松了. 确定, 他们缺乏信息并不是世界末日, 但想象一下,如果他们能积极主动地说: 

“我很难发动引擎,我的车不能加速,我的电池总是没电.“记住,你是个机械师. 🙂 

你会问,这和数据有什么关系? 嗯,表面上看,没什么. 但在构建更可靠的数据系统时,推荐一个正规滚球网站可以从友好的机制中学到一些东西. 

数据质量:响应式方法

如今,大多数的数据团队都采用了某种方法 异常 检测 解决数据质量问题. 异常检测对于那些希望确定数据运行状况的关键支柱(i.e., 体积, 新鲜, 模式, 和分发)不能满足组织在生产中的期望. 此外, 当实现端到端(如跨数据仓库)时,异常检测对业务非常有价值, 湖, ETL, 和BI工具), 而不是只生活在你的一到两层 数据平台

很好,你知道你的数据坏了. 现在? 

正如大多数数据团队正在学习的那样, 在建立信任时,仅通过异常检测是无法切断信任的, 问责制, 以及洞察驱动的组织所要求的透明度. 

最近, 我和一家财富500强软件公司的分析副总裁喝了一杯(虚拟的)咖啡,他几乎完美地总结了这个问题. 


他说:“我想要的是与影响相关的事情,这样我就可以采取行动。. “异常检测是必要的起点, 但推荐一个正规滚球网站需要做更多的工作来了解根本原因和评估影响. 知道有问题是很好的,但是很难理解该如何处理它. 而不是, 推荐一个正规滚球网站得弄清楚到底是什么坏了, 谁会受到影响, 为什么和哪里断的, 以及根本原因可能是什么. 我对异常检测并不感兴趣.”

显然,推荐一个正规滚球网站需要一种更好的方式来理解和主动改善推荐一个正规滚球网站数据的健康状况. 幸运的是, 现代数据团队需要从DevOps和站点可靠性工程中寻找灵感.

DevOps的生命周期是什么? 

图片由 沙旺特 on 在上面,由作者购买使用 标准的商业许可证

开发人员运营(DevOps)团队已经成为大多数工程组织不可或缺的组成部分, 打破软件和基础设施团队之间的竖井. 为了促进代码及其底层架构的快速开发, DevOps团队采用反馈循环, 叫做DevOps生命周期, 这有助于团队在规模上可靠地交付符合业务目标的特性.

DevOps的生命周期包含8个区别,连续的阶段,包括: 

  • 规划:与产品和业务团队合作,了解软件的目标和sla.
  • 发展:编写软件.
  • 集成:将软件与现有的应用程序集成.
  • 测试:测试软件.
  • 释放:将您的软件发布到测试环境中.
  • 部署:将软件部署到生产环境中.
  • 操作:运行软件,根据需要进行调整.
  • 监控:监控并提醒软件中的问题. 

这样循环往复. 虽然推荐一个正规滚球网站的许多数据技术和框架(i.e.、数据测试、数据sla、分布式架构等.),以符合推荐一个正规滚球网站的软件工程同行所设定的标准和最佳实践, 推荐一个正规滚球网站倾向于被动地处理数据质量,这妨碍了推荐一个正规滚球网站以一种有意义和可伸缩的方式推动业务变化.

引入数据可靠性生命周期

这与DevOps应用一个持续的反馈循环来改进软件的方法非常相似, 我认为推荐一个正规滚球网站是时候利用同样的勤奋来获取数据了. 

数据可靠性生命周期, 在全组织范围内持续、主动地改善数据健康状况的方法, 通过将DevOps的最佳实践应用于数据管道,消除了数据停机时间.

图片由巴尔摩西提供

这个框架允许数据团队:

  1. 第一个了解生产中的数据质量问题.
  2. 充分理解问题的影响.
  3. 完全理解数据是从哪里泄露的.
  4. 采取行动解决问题.
  5. 收集经验教训,这样随着时间的推移,你就可以防止问题再次发生. 

方法如下:

检测

图片由巴尔摩西提供

在测试数据并将其应用到生产中之后, 派拉蒙负责监视和提醒管道中的异常情况, 换句话说, 检测 当数据问题发生时. 异常检测是该策略的重要组成部分,尽管主要是被动的. 

自动监测和提醒新鲜度, 体积, 基于分发的问题将有助于密切关注数据的可靠性 sla和学校图书馆,当你没有见到他们时,确保自己是第一个知道的人. 随着数据管道变得越来越复杂, 数据必然会在某一点或另一点中断, 并且能够减少 时间去检测 (TTD)对于数据驱动的企业来说至关重要. 

解决

数据可靠性生命周期的第二阶段, 解决, 需要您评估损坏的数据对您更大的数据生态系统和相应的数据产品的影响, 以及与下游需要了解的人沟通问题. 在理想的情况下, 整个影响分析过程将是集中的, 与相应的警报分组和标记适当. 

在循环的这一部分, 端到端沿袭和统计分析可以用来理解当前问题的根本原因. 随着团队变得善于理解、分类和响应事件,他们可以减少 解决问题的时间 (TTR)用于常见或预期数据事件. 

防止

建立一个数据治理仪表板(就像这个在Looker中的仪表板)可以帮助数据团队更好地理解数据问题和随着时间的变化,这样他们就可以采取积极的措施来防止未来的事件.

防止 数据可靠性生命周期的阶段处理您之前的学习和关于您的数据管道的历史信息,并将它们转换为可操作的, 预防措施. 例如, not every 模式 change your engineers’ company makes to existing data sets means that your pipelines are on fire; in fact, 模式更新通常意味着开发和进展. 仍然, 没有适当的上下文, 检测阶段的数据可靠性生命周期(换句话说, 异常检测), 将无法拾取这些队列. 

通过应用数据可靠性生命周期, 小队应该能够进行地面记录, 元数据, 并查询您的数据,以衡量甚至预测数据健康状况. 更高级的生命周期还应该能够自动调整和更新测试和监视器,以匹配不断变化的业务逻辑, ,反过来, 减少 数据停机时间.

数据质量的未来是前瞻性的

机械师和软件工程师并不是唯一从主动出击中受益的人, 对他们的工艺的迭代方法. 

通过应用DevOps的类似原则, 数据团队可以更好地协作来识别, 解决, 甚至从一开始就防止数据质量问题的发生. 在接下来的几个月里, 我很高兴看到这种方法的发展, ,反过来, 数据系统如何成熟,变得更有弹性和更可靠. 

下次你见到修理工的时候,要感谢她. 你不知道她经历了什么! 

有兴趣学习更多关于数据可靠性生命周期的知识? 接触 巴尔摩西 或者剩下的 蒙特卡罗团队.