上文《数仓架构构建实战思路(二十)数据仓库运行过程中可能存在问题》我们提到了数据仓库运行的过程中会涉及到各种问题。但是里面比较隐含的问题主要是上游的数据发生了变更,如果我们没有及时发现的话,则会出现比较大的失误。因此这块对于数据质量的监控,我们需要做自动化的方式进行监控。那么对于数据质量的监控,我们需要做哪些方面的措施呢?在本文我们列举一下:
1)时间字段延迟监控
我们每一张表的数据存储的时候,都会有一个s_cts(源头数据产生的时间)和e_cts(写入当前表的时间)。这种情况会出现在kafka消费者,也会出现在可视化数据同步的时候。反正每一张表我们硬性要求添加这两个字段,然后在做监控的时候,我们可以根据数据产生的时间和数据消费写入的时间差来评估咱们得数据写入延迟。
通过这个延迟指标的监控,我们可以评估系统是否出现问题,任务处理job是否存在瓶颈及其他发现的情况。
2)空值检测
在数据仓库里面,我们是不允许任何字段出现空置的,如果摄入的数据是空置,那么我们也会添加一个默认值。所以在配置监控的时候,我们可以查看每个小时,每一天,产生的空值趋势。然后配置到监控系统里面去,并且实现相关的预警。
3)字段监控
字段监控主要应用在咱们得ods层,主要是同步数据源过来的数据。然后应用的字段主要和dim层的指标进行关联。也就是聚合一下ods层的某些表的枚举字段,查看是否满足dim维度表的预期,如果有差异,则进行预警。
4)数据一致性监控
这里属于自定义的监控了,一般需要编写响应的定制程序来查看是否满足需求。这种的话一般看有没有条件,主要是发生在向ods层同步数据这块,一般会使用count进行定时统计。
5)其他监控
这里的其他监控一般主要是基础的系统监控,或者有其他需求方面的监控。根据实际情况进行调整即可。
发表评论