一、为什么要做数据质量:
在大数据ETL过程中,如何保障数据质量,减少用户投诉?做数据质量!
二、什么时候做数据质量:
数据发生跨平台转移,包括但不限于:1、ftp数据到hive;2、oracle数据到hive;3、mysql数据到hive;4、hive到click house;
三、常见的错误类型大致有:
1、源端明细数据发生手动维护,目标段ETL只加载昨日数据,无法感知到数据变化;
2、业务发生变化,导致统计口径发生变化,如果不是交易人员,很难第一时间进行感知;
3、数据加载过程中,服务器或者服务异常,导致数据加载时发生异常;
四、校验指标:
完整性:完整性是指数据的记录和信息是否完整,是否存在缺失的情况。 可能存在某个任务抽取了部分数据后失败;
一致性:一致性是指同一指标在不同地方的结果是否一致。 由于计算口径或者开发人员的不同,容易造成同一指标出现的不同的结果。
五、实施:
对于ftp服务器类的源端数据: 1、数据拉取后对md5值进行校验,校验失败ETL流程中断,告警 2、数据加载后,对数据进行count值校验,校验失败ETL流程中断,告警 3、数据加载后,对数据进行一致性校验,比较常规报表关键值,确保业务变化对已有数据加工逻辑没有影响,如果校验失败,ETL流程中断,告警
对于网络互通的数据库:
1、数据加载后源端与目标段进行完整性,一致性检查,并输出校验指标,如果校验失败,ETL流程中断,告警
六、告警:
任务失败告警:ETL过程中,任务链依赖较多,每个模块设计时,应保证:1、任务失败可以重跑,这个非常重要;2、一键进行调度流的重跑
数据质量校验失败告警:
七、可视化:
无论是调度流,还是数据质量,应该实现可视化,方便对业务进行监控维护。