DataWorks有个生产环境dwd层的SQL任务,运维中心看一直都是正常调度的,但是从10月22号起的分区就没有数据了,但是手动补数据就又有了,这是什么情况?就是从22号以后,自动调度的任务在各日期分区都没有数据,非要手动补一遍才有?
大概率是少挂依赖 或者挂岔依赖了 比如 当前任务读的是表1 11号的分区,但是配置的是上游产出表1 10分区 ,手动重跑时 表1 11号分区也已经产出 就有数据了,此回答整理自钉群“DataWorks交流群(答疑@机器人)”
这种情况可能是由于您在生产环境中发生了故障或出现了某些异常情况,例如网络中断、硬件故障或数据源不可用等情况。在此期间,DataWorks无法正常调度,也就无法获取到新产生的数据。
您可以通过以下方式解决问题:
这个问题可能与DataWorks的SQL任务配置有关。首先,确认下您的生产环境空间名是否正确,因为开发环境和生产环境的空间名是不同的,开发环境使用【开发环境空间.表名】来使用表,发布到生产环境时,需要手动把开发环境空间改成生产环境空间名称才能发布。其次,检查下您的SQL任务中是否有分区字段,并且确保分区字段的值在任务执行期间是否有变更。因为分区字段的值变化可能会导致任务读取不到预期的数据。
另外,您提到明细粒度事实层(DWD)的数据丢失问题,事务事实表、周期快照事实表和累积快照事实表这三类事实表的设计原理也值得您再次审视。特别是累积快照事实表,它的记录会随着过程的变化而被修改,如果在此过程中出现任何错误或中断,都可能导致数据丢失。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
DataWorks基于MaxCompute/Hologres/EMR/CDP等大数据引擎,为数据仓库/数据湖/湖仓一体等解决方案提供统一的全链路大数据开发治理平台。