任务运维 | 怎么补数据?这有一篇实践案例
在任务运维同学的日常工作中,经常需要使用补数据功能,例如当一个新的数据开发任务提交上线后,需要将历史的数据也能写入对应的时间分区;或者当发现某个任务产出数据有误时,需要重新刷新数据,这时候也会需要用到补数据功能。
通过本篇文章,你能够收获:
- 了解补数据的场景和流程;
- 掌握补数据的步骤和内容,体验Easydata补数据的产品功能。
01实践内容
1.1 场景说明
假设你是一名勤勤恳恳的数据开发兼运维同学,今天早上如往常一样登陆平台查看任务运维情况,突然收到来自数据分析师的一条信息,对方表示今天有一个重要报表突然没有产出数据,需要你帮忙紧急排查问题。
你连忙定位到具体任务,再根据血缘定位上游任务,经过一番排查与操作,发现原来是ods层的有一个开发同学对表进行了变更,原先依赖的ods表已经不再产出,于是你虽然抱怨上游开发的粗心大意,但仍然吭哧吭哧认真地把所有相关下游任务代码改好并重新提交上线。但你的任务不仅是把下游任务的代码编辑完成,你还需要把昨天的数据恢复正常,于是你在运维中心的任务详情页面,点击了“补数据”按钮……
1.2 实操阶段
(1)创建补数据任务
进入任务运维中心,补数据入口有三处:分别是任务列表的右侧操作栏,可以支持单个任务补数据;任务列表的左上操作按钮,可以支持批量补数据;以及任务详情页右上角支持单个任务补数据。
本次实践带大家体验批量补数据的功能,点击任务列表,点击上方“批量补数据”按钮,即可进入批量补数据页面:
![](https://pic4.zhimg.com/80/v2-d6fb007b45fa10c806920a6d48afc0e3_720w.webp)
![](https://pic2.zhimg.com/80/v2-8ea2a1b8fd3470f52af2810a49125f95_720w.webp)
![](https://pic1.zhimg.com/80/v2-2cf3276425e983748b8d4421f318de54_720w.webp)
下游任务选择完成后,进入配置补数据设置的页面,配置项都已系统默认填充,本次实验需要体验通知功能,因此请确保通知条件的三个勾选项均已被勾选、通知对象为实验者本人,通知方式需至少勾选邮件、POPO之一。
![](https://pic1.zhimg.com/80/v2-69349c59973bf2147be3a47d7147d920_720w.webp)
(2)查看补数据任务详情
点击创建补数据任务后,页面自动返回补数据实例运维列表,用户可以查看补数据任务进展、对补数据任务进行暂停、终止等操作:
![](https://pic2.zhimg.com/80/v2-bba2e40a4b1058153b27b7f21e4f3241_720w.webp)
(3)补数据任务运维
让我们回到本次实践场景中。
你创建完补数据任务后,终于舒了一口气,想着终于找到了问题,还算是有惊无险,但是万万没想到紧接着就收到了来自运维中心的报警信息:
![](https://pic1.zhimg.com/80/v2-54dbe92a24b7ce0cedf6bc19b33ea4dc_720w.webp)
你赶紧点击链接,回到任务运维中心,链接自动跳转到了失败实例的详情页面,原来是最下游的任务出现了问题。于是你点击节点状态旁边的“放大镜”图标,进入智能诊断页面
![](https://pic2.zhimg.com/80/v2-1a2912a82b4c2f92ea4d4bb5402ce58d_720w.webp)
在智能诊断页面显示,Hive语法错误,需要检查代码。
![](https://pic2.zhimg.com/80/v2-2fe36c594c28f78c6079ee2f517a7885_720w.webp)
于是你来到离线开发,重新查看代码,发现是在刚刚改代码的时候,不小心写错了一个字段,你这才想起来,刚刚修改代码的时候,匆匆忙忙之中忘记先在开发模式试运行,竟然没有测试就直接就把代码提交到了线上!你赶紧把代码重新改好,并测试了节点,在测试通过后将任务重新提交上线。
![](https://pic3.zhimg.com/80/v2-3717e4cc252842d76eb80040ee3917e6_720w.webp)
你的工作还没有完成。修改完代码后,最后还需要回到运维中心,将刚刚失败的补数据实例重跑。
![](https://pic3.zhimg.com/80/v2-186a5e67b9e4de07b41e596ae065d5c2_720w.webp)
![](https://pic2.zhimg.com/80/v2-e9712612ba5b713bfad120ce8bd39985_720w.webp)
![](https://pic3.zhimg.com/80/v2-5d25d497fc7d630dd48a1a8c28c22492_720w.webp)
(4)补数据任务完成通知
点击运行后,实例开始重跑。在等待几分钟后,终于,系统再次发来通知,宣告这次数据补救行动圆满结束,撒花~
![](https://pic4.zhimg.com/80/v2-6c00027defc14a72e80e09b4f52370ff_720w.webp)
02小结
“补数据”是任务运维中心十分重要的功能。目前产品能够支持单个任务补数据与批量补数据,由于有些任务的上下游链路十分复杂,为方便用户快速选择需要补数据的任务和节点,产品也支持流程视图的补数据功能。感兴趣的同学欢迎了解产品~
*本文基于Easydata-V7.0版本,任务运维中心V1.8.2.1版本进行编写。点击试用Easydata产品
作者简介
露亚,网易数帆Easydata-任务运维中心产品经理。