任务运行资源说明

任务运行资源是指在Dataphin中创建任务并在运行时任务所占的调度资源,即CPU和内存的大小。本文为您介绍在Dataphin中如何自定义任务运行资源,助力您根据自身需求分配更合适的资源大小。

任务资源分类

  1. Dataphin任务按运行模式可分为两大类:

    • 共享调度资源任务:对于共享调度资源任务,所有共享调度资源的任务会运行在同一个容器中。例如,SQL任务、逻辑表任务、基于计算模板创建的且计算模板已开启共享资源配置的任务。更多信息,请参见新建离线计算模板

    • 独享调度资源任务:对于非共享调度资源任务,每次任务启动时都会启动一个新的容器用于执行任务。例如,Shell、Python、MapReduce、集成等任务。

  2. 实时集成和实时计算任务运行暂不消耗Dataphin调度集群资源。

任务运行资源消耗

任务运行时所用的资源消耗由两部分组成,容器基座任务资源

  • 容器基座:容器基座资源由系统配置决定,不可修改。具体详情,请参见容器基座

  • 任务资源:对于任务资源,您可进行自定义。Dataphin支持以下两种方式进行配置。

    • 通过添加注解语句配置任务资源。具体操作,请参见任务资源配置说明

    • 通过Dataphin自定义资源组功能为任务配置运行资源。具体详情,请参见自定义调度资源组概述

      重要

      当前仅支持基于最新架构部署的客户使用自定义资源组功能,详情请联系产品运维团队。

容器基座

容器基座资源消耗详情如下:

任务类型

资源

独享调度资源任务

每个任务运行需要独立的容器资源。资源消耗如下:

  • CPU:0.3核。

  • 内存:1GB。

任务运行完成后,容器资源和任务资源将一起释放。

共享调度资源任务

任务运行共享一个容器。资源消耗如下:

  • CPU:0.5核。

  • 内存:4GB

每个容器可支持一定的并发运行量,容器资源不会跟随任务运行结束而释放,但是当持续一段时间没有任务运行时,会自动释放容器资源。

任务默认资源

各任务类型的默认资源配置与自定义支持情况见下表所示:

任务类型

默认任务资源

是否可自定义

Shell/Python

CPU:0.1核

内存:256MB

离线管道/任务同步

CPU:0.5核

内存:1GB

SQL

不消耗额外资源。

Spark(JAR/SQL)

CPU:0.3核

内存:4GB

MapReduce

CPU:0.2核

内存:512MB

任务资源配置说明

自定义资源配置CPU可配置区间0.001CPU~4.0CPU,内存可配置区间32MB~16GB。若您需自定义任务资源大小,您可以在任务的代码头部添加注解语句:

@required_resource{required_memory=内存大小;required_cpus=CPU大小}

代码示例:

!#/bin/bash
@required_resource{required_memory=2GB;required_cpus=1.0}
@resource_reference{"test-boot.jar"}

java -jar test-boot.jar -Xms 1024m -Xmx 1024m