您可在运维中心查看发布至生产环境的任务,并执行测试、补数据等相关运维操作。本文以周期调度任务的运维为例,通过确认调度任务的配置是否符合预期、使用补数据计算历史时间段的数据、配置任务的智能监控规则,保障任务后续可以正常调度,为您介绍运维中心模块的基本使用。
前提条件
根据数据开发:开发者文档创建result_table
节点并完成发布。
本文均以result_table
节点演示相关运维操作,实际执行时,也可基于您的具体任务进行运维。
背景信息
DataWorks运维中心支持对周期任务、手动任务、实时同步任务等多种类型任务进行运维管理,并针对任务本身及任务执行使用的资源等各类对象提供多种监控方式,方便您根据监控报警及时发现并处理异常,保障数据生产的高效与稳定。
本文仅为您介绍运维中心模块的任务运行维度的基本使用流程,您可根据实际业务需求,执行更丰富的运维操作,例如:
对任务执行上下线,冻结等更多运维操作,详情请参见周期任务基本运维操作。
对任务运维操作进行相关管控,详情请参见运维操作管控(进阶)。
更多关于运维中心模块的介绍,详情请参见运维中心概述。
进入运维中心
登录运维中心控制台,切换至目标地域后,在下拉框中选择对应工作空间后,单击进入运维中心。
操作流程
阶段一:测试验证调度任务
为避免周期任务调度不符合预期,建议您在任务发布后先检查周期任务配置的调度参数、调度资源组等是否正确。若不符合预期,请修改相应配置并重新发布。
通过冒烟测试功能验证周期任务在生产环境执行是否正确。若执行出错,请根据报错及时处理,保障任务可正常运行。
通过补数据功能可重新计算历史时间段内的数据。
周期任务发布成功后会根据调度周期生成周期实例,如果在DataStudio中配置的实例生成方式为T+1次日生成,则任务将在第二天开始调度;如果配置为发布后即时生成,则任务当天便会调度。您可查看调度实例的生成及运行情况,判断任务的周期调度是否正常。
节点执行测试或补数据操作后,您可查看数据的写入情况。
阶段二:监控周期调度任务
您可根据业务需求,为周期调度任务配置智能监控规则,监控任务的调度运行状况,保障该任务后续可以正常调度。
为保障高优先级任务可在指定时间顺利产出数据,您可为该任务设置智能基线监控,当预测到任务无法在指定时间点完成时,基线会主动发送任务异常信息,帮助您及时获取并快速处理异常。
通过自定义独享资源组的监控规则,对独享资源组的使用率及资源组上等待的实例数设置监控报警,并进行相关运维操作。
步骤一:查看周期任务配置
为避免周期任务调度不符合预期,建议您在任务发布后先查看该任务的配置(例如,任务的调度参数、节点依赖关系等)是否正确。
查找目标节点。
在左侧导航栏单击
。在周期任务页面搜索目标节点。
查看节点详情。
单击目标节点,进入节点DAG图。
单击展开详情,查看节点的详细信息。
更多周期任务的操作,详情请参见查看并管理周期任务。
若节点的配置不符合预期,请进入数据开发(DataStudio)找到该节点,在节点编辑页面修改配置并重新发布。详情请参见节点相关操作。
本文示例在周期任务列表中,查找已发布的result_table
节点,查看其调度参数、调度资源组配置是否正确。
步骤二:测试周期任务
通过对周期任务执行冒烟测试,验证该任务在生产环境的调度运行是否符合预期。该操作将真实执行代码逻辑。
进入冒烟测试。
您可通过如下两种方式进入冒烟测试页面。
方式一:在周期任务列表,单击目标任务操作列的测试。
方式二:在目标任务的DAG图,右键单击该任务,选择测试。
配置任务测试运行的业务日期及运行时间,单击确定。
任务测试运行时会生成测试实例,您可进入
页面查看实例的运行详情,判断其运行状况。说明冒烟测试更多介绍,详情请参见执行冒烟测试。
查看测试实例,详情请参见执行测试并查看测试实例。
本文示例测试result_table
节点的运行是否成功。您可根据图示步骤测试运行节点,并查看所生成测试实例的执行情况。
步骤三:周期任务补历史数据
周期任务开发完成并提交发布后,会按照调度配置定时运行。如果您希望重新计算历史时间段内的数据,则可通过补数据功能实现。
进入补数据。
您可通过如下两种方式进入补数据页面。
方式一:在周期任务列表,单击目标任务操作列的补数据。
方式二:在目标任务的DAG图,右键单击该任务,选择补数据。
选择补数据模式。
您可根据需求选择如下补数据模式:
补数据方式
描述
适用场景
选择一个或多个任务作为根任务,可基于根任务手动选择将其下游任务作为本次补数据的任务范围,支持指定部分下游节点。
说明兼容原当前节点、当前节点及下游节点、高级模式等补数据方案。
最大支持同时补的根任务数上限为500,总任务数(即根任务及其下游任务)上限为2000。
用于对当前节点及下游节点进行批量补数据操作。
用于灵活选择一批节点进行批量补数据操作,节点之间可以不存在依赖关系。
选择一个起始任务作为根任务,以及一个或多个结束任务,平台自动分析,将根任务与结束任务间的所有任务作为本次补数据的任务范围(包含起始任务和结束任务)。
用于对依赖关系较复杂的任务进行全链路补数据。
选择一个任务作为根任务,并按照下游节点所在工作空间确定本次补数据的任务范围。
说明兼容原海量节点模式补数据方案,最大支持同时补的任务数上限为
2W
。不支持配置任务黑名单。
若当前节点的下游节点存在于多个工作空间,您需对工作空间的节点执行补数据,可使用该方式。
选择一个根任务后,系统自动分析该任务及所有下游任务作为本次补数据的任务范围。
重要仅在补数据任务运行时,才能看到触发了哪些任务运行,请谨慎使用。
用于对根任务及其全量下游任务进行补数据。
配置补数据参数。
根据业务需求配置补数据的业务日期、待补数据的节点等。不同模式,需配置的参数存在差异,详情请参见执行补数据并查看补数据实例(新版)。
本文示例使用当前节点模式,对result_table
节点补业务日期2024-09-17 ~ 2024-09-19
时间段每天00:00
~01:00
的数据。配置步骤参考下图。
配置补数据后,节点代码中的变量将根据您配置的调度参数及业务日期替换为具体的值。
步骤四:查看周期实例
周期任务发布成功后会根据调度周期生成周期实例,如果在DataStudio中配置的实例生成方式为T+1次日生成,则任务将在第二天开始调度;如果配置为发布后即时生成,则任务当天便会调度。您可查看生成的周期实例,判断任务的调度运行是否正常。
进入周期实例。
在运维中心左侧导航栏,单击
。查看周期实例。
根据周期任务的调度配置,查看该任务是否调度生成相应周期实例并运行正常。更多周期实例内容,详情请参见查看周期实例。
若实例为未运行状态,建议您进行如下处理:
通过DAG面板中的上游分析功能,快速定位阻塞当前任务运行的关键上游任务。
通过运行诊断功能,诊断该关键上游任务未运行的原因或存在的问题。当任务依赖层级较深时,您可通过运行诊断功能快速定位问题,提升运维效率。
本文示例查看小时调度节点result_table
在2024.09.19
运行生成的周期实例情况。
步骤五:查看执行结果
周期任务进行测试或补数据后,您可通过以下方式查看数据写入情况:
进入数据地图查看。
使用
查看。若您仅需在数据开发(DataStudio),即开发环境,查询数据及相关SQL代码、测试代码的实际运行情况与期望值是否相符,或验证代码的正确性,而无需将数据或SQL代码发布至生产环境并操作生产环境引擎,则可通过新建临时查询文件实现。
RAM用户默认无MaxCompute引擎中生产表的查询权限。您可进入数据地图,在表的详情页申请该表权限。详情请参见申请表权限。
节点在数据开发执行时,数据将写入开发引擎项目;在生产环境执行时,数据将写入生产引擎项目。查询时,请确认数据所在引擎项目。您可进入
页面,查看对应环境的引擎项目信息。MaxCompute支持跨项目访问表(例如,访问创建在其他数据源中的表、开发项目访问生产项目中的表),但部分引擎不支持。对应引擎类型是否支持跨项目访问表,请以引擎的实际功能为准。
本文示例result_table
节点所在生产环境的引擎项目为mc_test_project
,使用临时查询新建ODPS SQL节点,通过SQL语句查询生产环境中该表(即mc_test_project.result_table
)对应的分区数据。
步骤六:创建自定义监控规则
节点测试验证无误后,您可为节点自定义监控规则,监控节点运行状态。当节点运行出错时DataWorks会根据配置发送相应报警,以便您及时发现并处理异常,保障节点日后可正常调度。
在左侧导航栏单击
。新建自定义规则。
单击新建自定义规则。
配置规则信息。
您可根据业务需求,自定义所需规则,配置详情请参见自定义监控规则。
本文示例为
result_table
节点配置运行失败时监控报警,具体配置如下图。当result_table
节点运行出错时,会触发Test rules
规则,并以短信方式发送报警给节点责任人。同时,报警信息最多发送3次,每次报警间隔30分钟。说明请提前配置报警联系人相关信息,详情请参见查看和设置报警联系人。
步骤七:创建智能基线(进阶)
为保障任务可在指定时间内顺利产出,您可为任务设置基线监控。将任务添加至基线上并设置任务优先级和承诺时间,DataWorks将根据任务运行情况计算基线任务的预计完成时间,并使高优先级任务优先获得调度资源。当预测基线任务可能无法在承诺时间前完成时,DataWorks将发出报警,您可基于报警尽快处理异常。
在左侧导航栏单击智能基线。
新建智能基线。
在基线管理页签,单击新建基线。
配置基线信息。
您可根据业务需求,配置基线信息,配置详情请参见新建基线。
本文示例为
result_table
节点配置小时基线,监控节点每小时的数据产出情况,具体配置如下图。部分参数说明如下:优先级:数值越大,优先级越高。高优先级任务在资源紧张的情况下会优先获得调度资源。
预计完成时间:根据节点历史一段时间的完成情况推算其预计完成时间。
承诺时间:设置节点最晚需产出数据的时间点。您可根据业务需要及实际历史一段时间节点的运行完成情况进行配置。
预警余量:根据承诺时间来设置一定的预警余量,用于处理任务异常情况,以保障任务可在承诺时间点完成。
说明预警余量与承诺时间至少间隔5分钟。
当
result_table
节点的小时实例无法在每小时的30分钟内完成时,将触发Test Baselines
基线,并以短信方式发送报警给节点责任人。同时,报警信息最多发送3次,每次报警间隔30分钟。
步骤八:创建资源组自动运维规则
如果您使用的是独享资源组运行任务,则可根据业务需求创建独享资源组的自动运维规则,对资源组的使用率及资源组上等待的实例数设置监控报警并进行相关运维操作。
自动运维功能是通过关联独享资源组的监控规则,对运行在目标资源组上的实例任务定制监控指标,并结合业务逻辑自定义运维规则。当实例任务满足过滤条件时,将自动触发并执行运维动作,以达到自动运维的目的。
当前仅支持基于独享调度资源组进行自动运维。
为避免资源紧张导致任务执行缓慢,您可将任务移至独享调度资源组上执行。修改任务使用的资源组,详情请参见通用参考:切换资源组。
创建资源组监控规则。
在左侧导航栏单击
。新建并配置资源组监控规则。
资源组监控规则的配置与节点的监控规则类似,仅需将对象类型选择独享调度资源组即可。配置详情请参见自定义监控规则。
本文示例对
Exclusive_Scheduling_Resource
资源组进行资源组利用率的监控,配置如下图所示。说明本文仅演示配置操作,实际配置时,请为您所使用的资源组配置监控规则。
当
Exclusive_Scheduling_Resource
资源组的资源组利用率大于90%,并且持续10分钟时,会触发Resource group monitoring rules
规则,并以短信方式发送报警给接收人。该报警信息最多发送3次。
基于资源组监控规则配置自动运维规则。
在左侧导航栏单击
。在规则管理页签单击添加规则。
配置规则信息。
您可根据业务需求,配置规则信息,配置详情请参见新建资源组自动运维规则。
本文示例创建
Automatic_test
,并关联Resource group monitoring rules
独享调度资源组监控规则,当Resource group monitoring rules
规则被触发后,则DataWorks将对Automatic_test
中满足过滤条件的实例自动执行运维操作,具体配置如下图。部分参数说明如下:关联监控规则:目前仅支持关联独享调度资源监控规则。您需提前创建所需的资源组监控规则。
运维动作:目前仅支持选择终止运行实例。即触发运维规则后,满足条件的实例将被终止运行。
当
Exclusive_Scheduling_Resource
独享调度资源组的资源组利用率大于90%,并且持续10分钟时,DataWorks将对指定工作空间下运行在Exclusive_Scheduling_Resource
资源组的周期实例、测试实例、补数据实例中优先级为1的小时、分钟任务执行终止操作。
运维操作管控(进阶)
运维中心支持节点冻结、节点解冻、补数据、节点下线等扩展点,您可使用该扩展点结合扩展程序,实现自定义管控任务的逻辑处理与运维操作。详情请参见扩展程序概述、应用示例:运维中心触发事件检查。
后续步骤
您可为节点产出的表数据配置数据质量监控规则,保障表数据的产出符合预期。详情请参见数据质量。