平安证券刘宏霞:教你如何保障大数据质量(3)
我们看算一个收益指标是怎么做的.
BASE 层之后是业务实现层,这时候就比较简单了,我们可以根据客户粒度进行汇总,客户收益是什么样的,这种情况下,除了做诊断之外,还会做一些比较,只有这样才能算出真正收益是什么样的. 只有在不同层级保证之后,才能保证最顶层数据是不是正确的.那要做这么多数据诊断,纯粹靠人工做是不现实的事情. 所以搭建了自动化平台,会对 RAW、MID、BASE 层做各种诊断,把相应的诊断sql录入到自动化平台,后续所有执行都是由自动化平台执行的,执行出来的结果再作分析.比如现在有一个新的指标,需要对哪些字段进行相应诊断的时候,只要运行下自动化脚本,看一下结果图就可以了. 这样大大方便了测试人员,降低了手工测试成本,只需要维护测试脚本就可以了.在运行结果之后,可以看到这次运行多少个,失败多少个,看下失败的是什么造成的. 5、平安大数据监控平台除了测试,数据是要进行上线的,上线之后不可能每天再进行测试,也没有那么多精力,对已经上线的指标通过监控平台进行监控数据运行情况. 监控平台主要从几个方面进行监控. 我们会对每个层级进行监控,监控主要分为几个部分.
如果说每天跑完之后,有异常数据,会由告警平台发出相关邮件,通知大家要进行相应的处理. 我们现在看一下调度监控都会监控哪些东西? 5.1 任务状态运行的监控目前我们运行的调度大概在1300多个,每天都会监控运行的情况,还有一部分存在依赖关系的调度,如果之前调度没有运行完的话,会定时发送邮件告诉开发人员调度是延时了,这是业务运行状态进行监控. 可能很多人会觉得,一个调度运行一个小时,两个小时觉得是很正常的事情.但在我们平台上,一个调度运行超过十分钟就要分析,这个调度的代码是否是有问题的. 有些开发人员可能说写的结果是对的,它能够跑出结果就可以.但是调度运行时间长了,往往会影响到后面整个运行的过程,那就会导致今天一天数据可能都没有办法算完. 所以我们对于每个脚本运行时间是有限制的,如果超过十分钟,开发人员就要检测是不是代码是否存在问题. 5.2 依赖关系监控我们还有一种监控,就是依赖关系监控,大家可以看出,我们一个调度可能你的上层依赖很多调度,你的下层也依赖很多调度,那调度和调度之间是存在依赖关系的,一个调度失败可能会影响到其他调度的失败. 那么怎么监控?我们会监控到你上层依赖多少调度,下层依赖多少调度,因为这个脚本比较特殊,依赖特别多,原因它是我们最后一个调度,它需要向我们数据库推送8万个指标的,所以它的依赖特别大. 在我们调度依赖会有一些设置,如果它依赖的上层调度或者下层调度存在问题的话,就会立即停止运行,由运维人员进行处理. 5.3 数据规则监控另外是对于数据规则的监控,一个是基本规则的监控,第二自定义规则监控,基本规则监控相对比较简单,大家在测试和开发过程当中会做的一些长度诊断或者频度诊断等,这是作为基本功能的监控.
|