流计算 Oceanus 自定义 Connector

若内置的 Connector 无法满足需求,可以考虑自定义 Connector 功能,即用户可以自行上传实现了相应 Source 和 Sink 接口的类实现,然后作业在运行时会动态加载并调用。

相关产品
流计算 Oceanus 产品页,含版本规格、价格与购买入口。

一、版本说明

Flink 版本 说明
1.13 支持
1.14 支持
1.16 支持
1.18 支持
1.20 支持

二、选择合适的 Connector

用户可以选择第三方提供的 Connector 实现包(例如下面介绍的 Bahir),或者自行通过编程的方式实现。

三、Apache Bahir 第三方包

Apache Bahir 为 Flink 提供了常见的数据源和数据目的的扩展包。

目前 Bahir 支持如下的第三方组件:

·ActiveMQ

·Akka

·Flume

·InfluxDB

·Kudu

·Redis

·Netty

四、自行编程实现

参见 Flink API。

五、步骤一:源码构建

建议参考现有的 Connector 的项目,修改其 pom.xml 配置文件,引入相关的依赖包,然后通过 Maven 构建一个 JAR 包。

注意:尽量使用 maven-shade-plugin 将常见的依赖(例如 Apache Commons、Guava 等相关的包)进行 shade 化,以避免引入的库与流计算平台本身的类发生冲突。

六、步骤二:上传程序包

可以在流计算的 依赖管理 界面,上传 Connector 的程序包。首次上传是 V1 版本,以此类推。

七、步骤三:作业参数引用程序包

在作业的详情页,作业参数选择引用之前上传的程序包和版本。

注意:请务必确认程序包的版本是否符合预期,避免出现各种不可预知的错误。

八、步骤四:保存并发布

选择程序包后,可以单击保存,也可以选择直接发布草稿。

赞 (0)
上一篇 4天前
下一篇 4天前