DataWorks百问百答52:如何做无效表治理?-阿里云开发者社区

开发者社区> DataWorks> 正文

DataWorks百问百答52:如何做无效表治理?

简介: 无效表治理

在数仓开发中,随着业务的增长和变化,数仓里会有越来越多的数据表,同时也会产生非常多的无效表,占用着数仓中大量的存储资源,且影响数据复用。那对于无效表,我们又该如何治理呢?

在这里,我将无效表定义为:空表和长期无访问的表。

空表的存在,会影响数据检索和复用,建议定期清理。长期无访问的表,会持续占用数仓中的存储资源,同样建议定期清理。那如何在数仓这么多的表里,发现空表和长期无访问的表呢?DataWorks的资源优化模块中,有一个数据存储优化,能将MaxCompute中的空表、90天未访问的表都筛选出来,便于用户进行治理。

空表

DataWorks资源优化对空表的定义为:每日凌晨数据存储量为0的数据表。

治理建议:在治理空表时,建议按创建时间正序处理,避免那些提前创建的数据表被误删;同时由于凌晨是离线任务产出数据的高峰期,可能会存在部分表在凌晨是以insert overwrite的方式写入数据,在识别数据时,有一定概率会因为识别时,数据被清空而导致被判定为空表,故在治理时,可以参考表下游数,当下游数为0时,表示没有被下游表依赖。

如某张表出现了上述治理建议中提到的误识别,可先为该表申请添加至白名单,产品侧也会不断完善识别规则,降低误判。

dataworks52-1.png

长期无访问的表

DataWorks资源优化对长期无访问的表,有一个最近90天未访问表的治理项,其定义为:最近90天内该表未被访问(查询表数据、同步表数据等,都属于访问)。

治理建议:在治理最近90天未访问表时,需深入了解该表的产出情况及访问情况,可以点击表名进入表详情页,先查看表的产出情况,是否每日稳定产出,再查看表的最近访问时间。若数据每日有稳定产出,但又没有下游访问,需与该表的业务方进行沟通,是否业务已经停用。若业务不确认是否还在使用,可以考虑先将产出任务暂停,将表的生命周期调小(比如:将表生命周期调整为7天,生命周期到期后数据会自动被回收);如业务确认该表已经被废弃了,可以直接删除。

无法找到业务方,难以确认是否可删除,可以短期将其添加至白名单中,但仍需尽快与业务方沟通,对齐处理方案。

dataworks52-2.png

小结

以上是DataWorks资源优化对空表和最近90天未访问表问题的处理方案,目前资源优化对无效表的治理项判定原则还在不断完善中,大家对无效表的治理有任何想法和建议都欢迎加入钉钉群反馈。

资源治理专项沟通钉钉群二维码如下,欢迎大家一起交流资源治理相关问题。
image.png

dataworks52-3.png

DataWorks百问百答历史记录 请点击这里查看>>

更多DataWorks技术和产品信息,欢迎加入【DataWorks钉钉交流群】

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
DataWorks
使用钉钉扫一扫加入圈子
+ 订阅

DataWorks作为飞天大数据平台操作系统,对接各种大数据计算引擎,以all in one box的方式提供专业高效、安全可靠的全域智能大数据平台,高效率完成数据全链路研发流程,建设企业数据治理体系。 从2009年飞天大数据平台写下第一行代码开始,DataWorks历经10年发展,形成一套成熟的产品功能体系,满足企业数据中台搭建需求。

官方博客
DataWorks产品官网