数据质量第一步—数据监控

  • A+
所属分类:数据质量

 

往往那些不起眼的功能,最能毁掉你的工作成果。假设你做了100个业务,一旦有其中一个业务在某个时间段出现了数据异常,它带来的负面影响会超过你之前做的100个业务带来的正面影响。数据质量监控是一个在快速发展的业务中最容易被牺牲和忽略的功能,但是它确实至关重要的。

数据质量的关键所在包括:大致分为完整性,一致性,准确性,有效性和及时性这五个组件。当这些组件中的每一个都被正确地执行时,它将产生高质量的数据,同样重要的是,使用收集数据的每个人都必须对数据所代表的内容有一个大致的了解。高质量的数据将确保更有效地推动公司的成功,因为它依赖于基于事实的决策,而不是习惯性的或人类的直觉。

完整性:确保数据中应该收集的和实际收集的数据之间没有差距

解决方案:如果数据不完整,可以通过暂停提交来解决此问题。通过使用强制字段功能,可以轻松实现数据完整性。

致性:数据类型必须与收集的数据的预期版本一致。

解决方案:可以通过使用数据收集应用程序中的下拉菜单来确保这一点,这将是以预期格式一致的方式收集数据。而不是自由形式的填写,还有一些预先确定的选项可供选择。

准确性:收集的数据是正确的,相关并准确地表示它应该是什么。

解决方案:准确性比数据完整性和一致性更有难度。准确的数据经验累积和训练有素的结果,但是,仍然存在人为错误的空间。为了减少不准确的可能性,必须实施额外的措施,例如将图片捕获,GPS位置和时间戳添加到记录的事件中。

有效性:有效性来自过程而非最终结果。

解决方案:当需要修复无效数据时,过程会出现问题最多的地方,而不是结果。

及时性:应在预期时间收到数据,以便有效利用信息。

解决方案:实时数据,任何较慢的速度都不能提供足够的信息。有了实时数据和分析,企业就能更好地做出更有效、更明智的决策。迫切需要消除实地完成调查和收到调查之间的时间差

数据质量监控要做哪些监控内容

我把数据质量分成三部分来理解:

  • 监控
  • 告警
  • 多数据源

一、 监控

重点在监控,监控这一块比较大。整体来讲,我会把它分为这几块:日常监控、数据对账、性能监控。下面分开来讲。

  1. 日常监控

日常监控中最重要的一个就是数据落地检查,这应该是所有监控的一个基础。

下面是我认为一些比较常用的监控内容:

  1. 数据落地监控
  2. 数据掉0监控:实际扩展一下就是数据量阈值监控,少于某个量就告警
  3. 重复数据监控:很多表一定要监控重复数据的,这点至关重要。
  4. 关键指标监控
  5. 数据同比环比监控
  6. 数据对账

这点主要会体现到实时数据上,特别是Kafka数据落地,必须要有一个监控机制来知道我们的数据落地情况。

当然离线数据同样需要数据对账,对账方法有很多,比如可以和业务库来对比。

  1. 性能监控

我把这点理解为数据可用性监控,我认为这是一个很重要的点。 如果你做的数据别人用起来十分不爽,或者慢得要死根本没法用,那做了和没做有什么区别?

在性能监控上就是有几个点要注意:

  1. 查询性能,比如es的某个索引,在不同时间段的查询响应速度。
  2. 数据读写影响,机器故障影响,这点平常不太关注,不过像es这种,在写入数据的时候其实会影响读数据的,需要监控一下,并做相应调整。

二、告警

告警就不用说了,微信、短信和电话都很有必要。

定期的邮件汇总告警也很有必要。

然后有很多的告警可以考虑一个告警报表系统来展示,特别像是数据量趋势这种监控内容,可视化的对比比较有效。

三、 多数据源

在目前的大数据场景下,各种开源组件引入的十分多,而且会有新的组件不停地引入,因此要考虑到对不同组件的数据监控。

怎样监控

数据监控相对来讲是属于后台系统,不能算是对外的业务系统,一般重要性可能会被挑战,虽说如此,它还是值得一做的。 不过可能要换一些思路来做,如何快速地实现、并抓住核心的功能点是值得深思的一件事。

  • 我的微信
  • 这是我的微信扫一扫
  • weinxin
  • 我的QQ
  • 这是我的QQ扫一扫
  • weinxin

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: