本文为您介绍两种Flink全托管作业开发的方法以及限制。

限制说明

由于Flink全托管产品受部署环境、网络环境等因素的影响,所以开发Flink全托管作业,需要注意以下限制:
  • DataStream或Table API作业
    • 仅支持开源Flink V1.10和Flink V1.11版本。
    • 仅支持JAR形式的作业提交和运行。
    • 仅支持运行单个JAR形式的作业。
    • 不支持在Main函数中读取本地配置。
  • SQL作业
    • SQL编辑器提交的SQL作业,仅支持开源Flink V1.11版本。
    • SQL编辑器提交的SQL作业,仅支持一个INSERT INTO语句,即SQL作业中仅支持写1个Sink。
    • SQL支持的上下游存储(Connector)列表,请参见支持的上下游存储

DataStream或Table API作业开发

您需要在线下完成作业开发后,再在Flink全托管控制台上提交作业到集群上运行。您可以参见以下文档开发Flink全托管产品业务代码:

Flink SQL作业开发

为了方便您编写和管理Flink SQL作业,提高作业开发效率,Flink全托管产品为您提供Flink SQL的全套功能,包括元数据管理、UDF注册和SQL编辑器等。

在开发控制台上,Flink SQL作业开发流程为:注册表 -> 编写SQL语句 -> 语法校验 -> 执行。

  1. 登录实时计算统一控制台
  2. Flink全托管页签,单击对应工作空间操作列下的开发控制台
  3. 分别注册源表和结果表。
    1. 在左侧导航栏上,单击SQL > 编辑器
    2. 单击创建表图标。
    3. 单击目标Connector。
      相关建表语句就会出现在SQL编辑器中。建表语句
    4. 修改Schema和WITH参数。
      说明 如果您的SQL需要使用UDF,您需要先注册您的UDF,才能在SQL中使用,注册UDF的操作请参见管理自定义函数(UDF)
    5. 单击执行
      注册成功的表会出现在SQL编辑器左侧的Tables列表中,您可以单击表名,查看表的ColumnsProperties信息。
      如果您需要对已注册的表进行DescribeRenameAlterDrop操作,您可以通过以下任何一种方式进行:
      • 直接编写SQL语句:
        1. 在SQL编辑器中,编写SQL语句,例如删除XXX表:DROP TABLE XXX;
        2. 单击执行
      • 单击对应按钮后修改相关参数:
        1. Tables列表中,单击目标表旁边的三个点图标。
        2. 根据您的需要,单击对应按钮。

          相关操作的语法模版会自动添加到SQL编辑器中。

        3. 修改模版中的相关参数和取值。
        4. 单击执行
  4. 根据业务逻辑,在SQL编辑器中,编写SQL语句。
    简单的逻辑为:INSERT INTO 结果表 XXX FROM 源表;
  5. 单击语法检查
    在SQL编辑页面下方,您可以看到SQL语法校验结果,只有通过校验的SQL才能被执行。
  6. 单击执行
  7. 在弹出的对话框中,单击确定创建作业
    系统对于含有INSERT INTO关键字的DDL文本,会默认创建一个Flink SQL作业。单击确定后,会自动跳转到作业配置页面。

    如果您需要保存SQL文本,您可以单击保存为SQL文本后,在SQL > SQL列表中查看已保存的SQL文本。