基于MaxCompute的离线任务对数据产出有严格的时间要求,在确保数据准确性的前提下,还需要让数据能够及时提供服务。本文为您介绍如何使用DataWorks智能监控的规则管理功能监控数据的及时性。
前提条件
如果您想使用完整的智能监控功能,需要购买标准版及以上版本DataWorks,详情请参见DataWorks各版本详解。关于DataWorks智能监控功能详情请参见智能基线概述。
背景信息
在对数据产出及时性监控前,首先需要确定调度任务的优先级。数据资产等级越高的任务节点,优先级越高,您可以给予更加严格的数据及时性监控和告警规则。
操作步骤
进入规则管理页面。
在DataStudio页面左上角单击图标 > 运维中心(工作流)。
在运维中心页面,单击左侧菜单栏上的规则管理。
,关于规则管理的详情请参见
新建自定义规则。
在规则管理页面单击新建自定义规则,输入参数后单击确认即可。在本例中,监控整个业务流程每次运行时间不可超过30分钟。如果运行时间超过30分钟,则上报一次告警。连续上报3次告警,系统自动以邮件及短信的方式进行上报。
参数
描述
规则名称
输入新建自定义规则的名称。
对象类型
指定监控对象的类型,定义监控的粒度。包括任务节点、基线、工作空间、业务流程、独享调度资源组和独享数据集成资源组。
说明对象类型为基线时,仅对基线上的任务运行状态进行监控,不会监控基线任务的上游任务,如果您需要同时监控基线任务的上游任务,请参见:智能基线概述。
规则对象
指定监控对象。输入监控对象的名称或ID后,在列表中选择需要添加的对象,单击添加。
支持添加的监控对象类型及数量上限如下:
任务节点:50个
基线:5个
业务流程:5个
工作空间:1个
任务白名单
指定上述监控对象中,哪些任务不受当前规则监控。
当对象类型为基线、工作空间、业务流程时,支持您输入节点名称/ID,单击添加按钮将任务添加至白名单列表中。
说明白名单中的任务将不受监控,且最多支持添加50个任务。
资源组名称
指定需要监控的独享资源组名称。
当对象类型为独享调度资源组和独享数据集成资源组时,则需要在下拉列表中选择需要监控的资源组名称。
对于重要的任务节点,您还可以单独设置任务节点规则,并定义其他触发条件。
数据及时性优化。
通常,影响数据按时产出的主要原因和优化方式如下表所示。
问题原因
问题优化
计算资源不足
资源总量不足。例如,资源上限为500,但您提交了需要1000资源的任务。
资源分配不合理,重要任务未优先分配资源。
扩容计算资源,或让核心计算任务独占资源。
代码执行效率低
代码冗余。例如,扫描所有分区。
节点任务配置不合理。例如,出现长尾问题。
分级错峰,高峰时段让低优先级任务延迟启动。
缺少问题紧急预案,运维人员无法应对。
在任务正式运行前,进行充分的测试。