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