更新时间:2025-12-11 GMT+08:00
分享

运行FlinkSql作业

用户可将自己开发的程序提交到MRS中,执行程序并获取结果,本章节指导您如何在MRS集群中提交一个FlinkSql作业。

FlinkSql作业用于查询和分析数据,包括SQL语句和Script脚本两种形式。如果SQL语句涉及敏感信息,也可使用脚本文件方式提交。

约束与限制

MRS 3.6.0及之后版本的集群支持通过MRS管理控制台提交FlinkSql作业。

前提条件

  • 用户已经将作业所需的程序包和数据文件上传至OBS或HDFS文件系统中。
  • 如果作业程序需要读取以及分析OBS文件系统中的数据,需要先配置MRS集群的存算分离,请参考配置MRS集群存算分离

提交作业

用户可通过管理控制台在线创建并运行作业,也可以通过MRS集群的FlinkServer WebUI在线编辑开发Flink作业。

  1. 登录MRS管理控制台
  2. 选择“现有集群”,选中一个运行中的集群并单击集群名称,进入集群概览信息页面。
  3. “概览”页签中,单击“IAM用户同步”右侧的“同步”进行IAM用户同步。

    集群开启Kerberos认证时需执行该步骤,若集群未开启Kerberos认证,无需执行本步骤。

    IAM用户同步完成后,请等待5分钟,再进行提交作业,更多IAM用户同步说明请参考IAM用户同步MRS集群说明

  4. 单击“作业管理”,在作业列表界面单击“添加”。
  5. “作业类型”选择“FlinkSql”并参考表1配置FlinkSql作业信息。

    表1 作业配置信息

    参数

    描述

    示例

    作业名称

    作业名称,只能由字母、数字、中划线和下划线组成,并且长度为1~64个字符。

    FlinkSql

    SQL类型

    SQL语句提交类型。

    • SQL:直接运行手动输入的SQL语句。
    • Script:以加载HDFS或者OBS中的SQL脚本文件运行SQL。

    SQL

    SQL语句

    “SQL类型”参数为“SQL”时参数有效,请输入待运行的SQL语句,确保输入语句正确。

    如果同时需要提交多条语句并执行,可使用“;”分隔不同语句。

    -

    SQL文件

    “SQL类型”参数为“Script”时参数有效,待执行SQL文件的路径,可直接手动输入地址路径,也可单击“HDFS”或者“OBS”选择文件。

    • 路径地址最多为1023字符,不能包含;|&>,<'$特殊字符,且不可为空或全空格。
    • OBS程序路径地址以“obs://”开头,HDFS程序路径地址以“hdfs://hacluster”开头,例如“hdfs://hacluster/user/XXX.jar”。
    • FlinkScript文件需要以“.sql”结尾。

    obs://wordcount/program/test.sql

    运行程序参数

    可选参数,为本次执行的作业配置相关优化参数(例如线程、内存、CPU核数等),用于优化资源使用效率,提升作业的执行性能。

    FlinkSql作业常用的运行程序参数如表2所示,可根据执行程序及集群资源情况进行配置。

    -

    服务配置参数

    可选参数,用于为本次执行的作业修改服务配置参数。

    该参数的修改仅适用于本次执行的作业,如需对集群永久生效,请参考修改MRS集群组件配置参数进行集群组件配置参数的修改。

    如需添加多个参数,请单击右侧增加。

    例如增加以下服务配置参数:

    • fs.obs.access.key:通过AK/SK方式访问OBS时访问OBS的密钥ID。
    • fs.obs.secret.key:通过AK/SK方式访问OBS时访问OBS与密钥ID对应的密钥。

    -

    表2 FlinkSql作业运行程序参数

    参数

    描述

    示例

    -ytm

    设置每个TaskManager容器的内存(单位可选,默认单位MB)。

    1024

    -yjm

    设置JobManager容器内存(单位可选,默认单位MB)。

    1024

    -ys

    设置TaskManager的核数。

    2

    -ynm

    自定义Yarn上应用程序名称。

    test

    -c

    设置程序入口点的类名(如“main”或“getPlan()”方法)。该参数仅在jar程序未指定其清单的类时需要。

    com.bigdata.mrs.test

  6. 确认作业配置信息,单击“确定”,完成作业的新增。
  7. 作业提交成功中,可在作业列表中查看作业运行状态及执行结果,等待作业状态变为“已完成”,可查看相关程序分析结果。

FlinkServer WebUI提供基于Web的可视化开发平台,用户只需要编写SQL即可开发作业,极大降低作业开发门槛。同时通过作业平台能力开放,支持业务人员自行编写SQL开发作业来快速应对需求,大大减少Flink作业开发工作量。

更多FlinkServer WebUI作业操作指导请参考运行FlinkSql作业

  • 企业级可视化运维:运维管理界面化、作业监控、作业开发Flink SQL标准化等。
    图1 可视化运维
  • 快速建立集群连接:通过集群连接功能配置访问一个集群,需要客户端配置、用户认证密钥文件。
  • 可视化开发平台:支持自定义输入/输出映射表,满足不同输入来源、不同输出目标端的需求。
  • 图形化作业管理:简单易用。
    图2 图形化作业管理

相关文档

相关文档