EMR Java Flink任务适用于实时任务开发场景,支持引用资源Jar包的方式。
本文将为您介绍 EMR Java Flink 任务的相关使用。
DataLeap产品需开通数据开发特惠版、DataOps敏捷研发、大数据分析 或 分布式数据自治服务后,才可创建火山引擎 E-MapReduce(EMR)流式数据开发任务。
EMR 引擎绑定的集群类型、版本及依赖的服务,需满足以下条件之一,方可创建 EMR Java Flink 任务:
支持集群版本 | 支持集群类型 | 依赖集群服务 |
---|---|---|
EMR-1.3.1 | Hadoop | Flink |
Flink | Flink | |
EMR-3.2.1 及以上 | Hadoop | Flink 和 GTS |
DataLeap 项目控制台首次绑定 EMR 集群时,会提示在 EMR 集群关联的安全组中添加 8898 和 9030 端口,您单击确定按钮即可实现自动添加。添加后,为确保能在 DataLeap 上正常进行数据开发和执行任务,需保证相关端口一直存在于安全组中,不要删除。
详见创建项目。
在概览界面,显示加入的项目中,单击数据开发进入对应项目。
在任务开发界面,左侧导航栏中,单击新建任务按钮,进入新建任务页面。
选择任务类型:
分类:数据开发。
绑定引擎:EMR。
在下拉列表中选择项目绑定时的 Hadoop 引擎实例,项目支持绑定多个 EMR 引擎,您可在多个引擎实例中选取该任务需执行的引擎实例。多引擎绑定详见创建项目。
选择任务:流式数据 EMR Java Flink。
填写任务基本信息:
任务名称:输入任务的名称,允许字符.、字母、数字、下划线、连字符、[]、【】、()、()以及中文字符,需要在127个字符以内。
保存至: 选择任务存放的目标文件夹目录。
单击确认按钮,成功创建任务。
通过下列参数设置Jar包:
选择Jar包 可通过以下方式选择资源:
资源库中选取已有资源。
在左侧导航栏资源库中新建资源,详见:资源库操作。
执行引擎:下拉选择 EMR 集群中 Flink 组件对应的执行引擎版本。
Main Class:填写主类,例如:com.bytedance.flinkdemo.KafkaWordCount
可填写 Flink 相关的动态参数和执行参数,平台已为您提供一些常用的 SQL 参数、State 参数、Runtime 参数等,您可以根据实际情况进行选择,或者自行输入所需参数。更多参数详见 Flink 官方文档。
任务模板:选择是否使用任务模板
您可以选择是否通过任务模板方式,便捷快速的复用一些参数逻辑,在下拉框中选择 EMR Java Flink 任务模板,并选择相应的版本号即可完成复用。操作说明详见:任务模板
参数设置:
单行编辑模式:填写 key-value,key值只允许字母、数字、小数点、下划线和连字符。
a. 添加一行参数
b. 删除当前这行参数
c. 清空输入框中已输入的参数值
脚本编辑模式:通过 JSON、Yaml 的格式填写运行参数。
子类查看模式:您通过上方编辑模式输入参数后,可单击子类查看模式,支持将添加的参数自动做分类,帮助您在众多参数下,能更方便了解输入的 Flink 参数。
说明
可在对应分类下,按照关键词搜索需要使用的参数。
若在指定分类下,无法搜索到对应参数,可在“其它参数”类别,自行进行输入。
填写在“其它参数”类别下的参数,若隶属于“SQL参数/State参数/Runtime参数”类别,完成编辑后,系统会将其归属到对应分类。
用户自定义参数,填写实时数据来源端相关实例信息,例如 kafka 消息队列接入时,需要填写 Topic、接入点地址等参数信息。
单行编辑模式:填写 key-value,key值只允许字母、数字、小数点、下划线和连字符。
脚本编辑模式:通过JSON、Yaml的格式填写运行参数。
单击右侧导航栏中参数设置,进行任务的基本信息、资源设置、数据源登记配置。
EMR Java Flink 任务的基本信息配置如下:
参数名称 | 描述 |
---|---|
任务名称 | 显示创建任务时输入的任务名称,参数设置中不支持修改,可以在左侧任务目录结构中的任务名称右侧更多单击重命名进行修改。 |
任务类型 | EMR Java Flink |
任务描述 | 非必填,可对任务进行详细描述,方便后续查看和管理。 |
责任人 | 仅限一个成员,默认为任务创建人(任务执行失败、复查通过或者失败时的默认接收者),可根据实际需要,修改为其他项目成员。
|
Yarn 队列 | 支持下拉选择任务运行所需的 Yarn 队列信息。您可在创建项目 > 服务绑定 > EMR Yarn 队列绑定时,可添加绑定多个队列信息。详见创建项目。 说明 EMR Yarn 队列的更多操作详见 YARN 队列管理。 |
优先级 | 您可对流式任务设置任务优先级,指定当前任务的优先级情况:
|
标签 | 您可以自定义标签,用于标识某一类任务,以便快速搜索过滤,操作即时生效,无需重新上线任务。
|
设置 EMR Java Flink 运行时相关资源分配:
参数名称 | 描述 |
---|---|
TaskManager个数 | 设置 flink 作业中 TaskManager 的数量。 |
单TaskManagerCPU数 | 设置单个 TaskManager 所占用的 CPU 数量。 |
单TaskManager内存大小(MB) | 设置单个 TaskManager 所占用的内存大小。 |
单TaskManager slot数 | 设置单个 TaskManager 中 slot 的数量。 |
JobManager CPU数 | 设置单个 JobManager 所占用的 CPU 数量。 |
JobManager内存 | 设置单个 JobManager 所占用的内存大小。 |
登记该任务使用的 Source 和 Sink 信息,以用于后续监控配置和血缘构建,支持通过手动添加。
手动添加:单击手动添加按钮,可根据 SQL 逻辑进行数据源上下游登记。
源/目标:支持源/目标 Source 和 Sink 的选择。
数据源类型:支持选择 DataGen、Rmq、Bmq、JDBC、Abase、火山/自建 Kafka 这些数据源类型。
各数据源类型需补充填写相应的信息,您可根据实际场景进行配置,如 Kafka 的数据源类型,需填写具体的Bootstrap Servers、Topic 名称、消费组等信息。
直接上游任务:您可通过手动输入任务名称方式,进行搜索上游任务,单击添加按钮,进行手动添加。
直接下游任务:无法通过手动添加的方式进行操作,其余任务将该任务设置为上游时,此处会自动加载出下游任务。
说明
Abase 和 Rmq 数据源类型,仅支持解析操作,暂不支持上线发布后运行。且 Abase 数据源通常是在火山引擎内部业务上云中使用。
EMR 引擎暂不支持自动解析功能来登记数据源。
批量删除:手动添加的数据源,您可通过勾选已登记的数据源后,单击右侧删除或批量删除按钮 ,删除勾选中的数据源。
上下游任务查看:数据源登记解析出的上下游任务,您可对上游依赖任务进行编辑、添加、删除、禁用等操作;下游任务仅支持查看。
任务所需参数配置完成后,将任务提交发布到运维中心实时任务运维中执行。
单击操作栏中的保存和提交上线按钮,在弹窗中,需先通过任务上线检查和提交上线等上线流程,最后单击确认按钮,完成作业提交。详见概述---流式任务提交发布。
后续任务运维操作详见:实时任务运维。