背景
阿里云平台MaxCompute的表分区数有60000个的限制,如果达到这个上限,MaxCompute的表便无法新增分区,线上任务会执行失败。
解决方案
可以通过程序自动监控项目空间中表对应的分区数,如果接近上限就进行报警。
- 如果用阿里云的DataWorks平台的自带功能,可以通过“数据质量”模块监控分区统计结果数,如果大于预警值则进行报警。
- 如果是通过手动写代码的方式,可以自定义Python或者其他脚本,通过程序判断表的分区数,如果大于预警值则进行报警。
解决步骤
查看分区数
查询MaxCompute表对应分区数SQL如下:
-- 查询项目分区元数据信息
SELECT * FROM Information_Schema.partitions;
-- 查看表对应分区数量
SELECT table_name,COUNT