数据规范

计算作业规范

执行前

上游上报日志: 以 /user/data/log_name/yyyy/mm/dd/hh/ 为例,日志采集端在完成数据校验后生成控制文件,如.success文件。ETL任务扫描对应目录,若文件不存在或文件为空,后续依赖任务不能启动。

上游数据库:判断sqoop等同步工具返回状态,非“成功完成”状态,后续依赖任务不能启动。

第三方同步:上游为非集团商业部,建议参考第上游上报规范,可与上游数据方商定协议。

执行中 

作业状态类型:等待、执行中、成功、告警、错误、超时;

等待:前置任务正在执行中,当前任务状态应为“等待或就绪”;

执行中:正在执行的任务;

成功:任务成功执行,需获取调度系统中记录的任务耗时,需要定期优化大耗时任务;

错误&告警:包括调度系统错误和计算作业错误。前者可借助@龙老师团队的监控系统,作业错误需要数据团队同学处理。处理流程为:1.接受短信/邮件/电话报警;2.系统自动重试;3.人工干预:查看错误日志,定位问题,修改后重试。(注意:若值班同学无法独立处理错误,请第一时间联系作业负责人)。

常见错误种类包括:语法错误(低概率发生)、内存溢出(一定概率出现)、集群资源分配不均以及其他非常见原因。根据作业重要程度分等级,针对不同等级失败对应具体操作见后。ps.针对代码质量问题启动codeReview。

超时:原则上离线计算作业需在规定时间(假设8:00am)之前全部完成,若在此时间内无法完成,需邮件报警输出未完成的任务列表,可选择通过手动暂停低优先级任务释放资源,确保核心报表按时产出,若无法保证核心数据在规定时间内产出,需有正式邮件公告发出并评估完成时间点。

任务重要程度划分:

kpi作业:涉及到核心指标产出,相对前置任务,中间结果产生等作业类型,在任务出现失败时需要在第一时间处理;

一般重要任务:非核心指标产出或相对后置任务;

普通任务:一般测试任务或局部监控,可根据具体需求方要求在上班之后处理。

执行后

除正常调度系统返回“成功”之外,对核心指标(加载、展现、消耗)进行阈值报警,超过阈值(默认-5%~5%)提前下发邮件或短信,以确认非技术因素引起。

故障定级

拟采用结果评估法:

S1-收入损失,S2-数据问题导致客户投诉,S3-流量损失,S4-非暴露的脏数据;

针对S1~S3需进行case study,S4根据团队leader来评估是否case study

处理流程

【故障通报】:针对离线计算任务,若数据或服务无法在规定时间产出,需第一时间邮件公告;实时计算任务需实时报警;

【服务降级】:视具体情况可将高时间响应级别服务将至低级别,如实时计算将至小时级别,小时级别将至0.5T等;

【故障修复】:故障处理需记录以下几点:发生时间、影响范围、开始处理时间、恢复时间、产生原因、解决方案以及后续改进方案,必要情况需记录系统资源环境与重要log;

【总结】:定级参考与case study

CaseStudy模板

1.事故描述

   1.1 详情 

   1.2影响和损失

2.直接原因分析

3.暴露的问题

4.后续改进

备注

你可能感兴趣的:(数据规范)