本文为您介绍如何管理Flink全托管自定义Connectors,包括创建、更新和删除。

背景信息

在使用Flink SQL开发作业时,需要使用SQL Connectors连接您的源表、结果表和维表。Flink全托管产品支持云上常用的多种类型的Connectors,但相对于目前大数据常用的技术栈而言,仍然只是较少的一部分,为了支持您可以使用更多类型的Connectors,我们支持您自定义Connectors后上传使用。

注意事项

  • 您需要根据社区定义的Connectors标准开发您自定义的Connectors,才能正确地被Flink全托管产品识别并使用,因此您需要明确的Connector Meta文件和申明Factory类。自定义Connector开发详情请参见User-defined Sources & Sinks
  • 同种类型的Connectors仅可以上传一次。
  • 为了避免JAR包依赖冲突,您还需要注意以下几点:
    • Flink镜像和Pom依赖的Flink版本请保持一致。
    • 请不要上传Runtime层的JAR包,即在依赖中添加<scope>provided</scope>
    • 其他第三方依赖请采用Shade方式打包,Shade打包详情参见Apache Maven Shade Plugin

注册与使用自定义Connectors

  1. 进入自定义Connector注册入口。
    1. 登录实时计算控制台
    2. Flink全托管页签,单击目标工作空间操作列下的控制台
    3. 在左侧导航栏,单击作业开发
  2. 注册自定义Connector。
    1. Connectors页签,单击加号图标。
      添加connector
    2. 上传自定义Connectors JAR文件。
      上传JAR
      您可以通过以下任何一种方式上传自定义Connectors JAR文件:
      • 上传文件:单击选择文件后,选择您的目标Connectors JAR文件。
      • 外部URL:输入外部URL地址。例如,https://ossbucket/artifacts/namespaces/flink-default/flink-jobs-1.0-SNAPSHOT.jar
        说明
        • 如果外部URL是OSS Bucket地址,则自定义Connectors文件必须位于sql-artifacts/namespaces/{namespace}目录下。
        • 如果您的Connectors文件存放在非OSS的其他服务上,且和Flink全托管不在同一个VPC,则此处需要填写为公网服务地址。在使用公网地址前,您需要先打通实时计算Flink全托管和目标服务的公网网络链接。详情请参见Flink全托管集群如何访问公网?
    3. 上传完成后,单击继续
      系统会对您上传的自定义Connectors内容进行解析。如果解析成功,您可以继续下一步。如果解析失败,请确认您上传的自定义Connectors代码是否符合Flink社区标准。
    4. 单击完成
      创建完成的自定义Connectors会出现在Connectors列表中。
  3. 在作业DDL中使用Connector。
    作业开发详情请参见作业开发
    说明 DDL定义中的WITH参数中的Connector取值为您自定义Connector JAR包中DynamicTableFactory的identifier参数取值,其他WITH参数及含义详情由您开发的自定义Connector决定。

更新自定义Connectors

  1. 进入自定义Connector更新入口。
    1. 登录实时计算控制台
    2. Flink全托管页签,单击目标工作空间操作列下的控制台
    3. 在左侧导航栏,单击作业开发
  2. 单击Connectors页签。
  3. Connectors列表中,鼠标悬停在目标自定义Connectors名称上,单击更新JAR
  4. 上传自定义Connectors JAR文件。
    修改connector
    您可以通过以下任何一种方式上传自定义Connectors JAR文件:
    • 上传文件:单击选择文件后,选择您的目标Connectors JAR文件。
    • 外部URL:输入外部URL地址。例如,https://ossbucket/artifacts/namespaces/flink-default/flink-jobs-1.0-SNAPSHOT.jar
      说明
      • 如果外部URL是OSS Bucket地址,则自定义Connectors文件必须位于sql-artifacts/namespaces/{namespace}目录下。
      • 如果您的Connectors文件存放在非OSS的其他服务上,且和Flink全托管不在同一个VPC,则此处需要填写为公网服务地址。在使用公网地址前,您需要先打通实时计算Flink全托管和目标服务的公网网络链接。详情请参见Flink全托管集群如何访问公网?
  5. 上传完成后,单击继续
    系统会对您上传的自定义Connectors内容进行解析。如果解析成功,您可以继续下一步。如果解析失败,请确认您上传的自定义Connectors代码是否符合Flink社区标准。
  6. 单击完成

删除自定义Connectors

如果您的自定义Connectors不再使用,您可以按照以下步骤删除自定义Connectors。

  1. 进入自定义Connector删除入口。
    1. 登录实时计算控制台
    2. Flink全托管页签,单击目标工作空间操作列下的控制台
    3. 在左侧导航栏,单击作业开发
  2. 单击Connectors页签。
  3. Connectors列表中,鼠标悬停在目标自定义Connectors名称上,单击删除JAR图标。
  4. 单击确认