flink版本 1.17.0
cdc版本 : flink-sql-connector-oracle-cdc-2.4.2 ?
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
根据您提供的信息,Flink版本为1.17.0,CDC版本为flink-sql-connector-oracle-cdc-2.4.2
。以下是关于该配置的详细说明和注意事项:
在使用Flink CDC连接器时,确保Flink引擎版本与CDC连接器版本之间的兼容性至关重要。根据知识库中的版本对应关系: - Flink 1.17.x 对应的VVR(阿里云实时计算Flink版)版本为 vvr-8.0.x-flink-1.17
。 - 社区版CDC连接器的版本 release-2.4
适用于 VVR 6.0.2 至 VVR 8.0.5 的范围。
因此,Flink 1.17.0 和 flink-sql-connector-oracle-cdc-2.4.2
在理论上是兼容的,但建议您确认以下几点: - 确保使用的Flink引擎版本为 vvr-8.0.x-flink-1.17
或更高版本。 - 如果使用的是社区版CDC连接器,请尽量选择与VVR版本对应的Release版本,以避免潜在的兼容性问题。
flink-sql-connector-oracle-cdc-2.4.2
是一个FAT JAR,包含了所有依赖项,可以直接用于SQL作业。以下是使用该连接器的基本步骤:
如果您在JAR作业中使用该连接器,需要在 pom.xml
文件中添加以下依赖:
<dependency>
<groupId>com.ververica</groupId>
<artifactId>flink-sql-connector-oracle-cdc</artifactId>
<version>2.4.2</version>
</dependency>
注意:flink-sql-connector-oracle-cdc
是FAT JAR,无需额外管理第三方依赖。
在SQL作业中,可以通过以下方式创建Oracle CDC源表:
CREATE TABLE oracle_source (
id INT,
name STRING,
description STRING,
PRIMARY KEY (id) NOT ENFORCED
) WITH (
'connector' = 'oracle-cdc',
'hostname' = '<Oracle数据库主机名>',
'port' = '<Oracle数据库端口>',
'username' = '<用户名>',
'password' = '<密码>',
'database-name' = '<数据库名称>',
'schema-name' = '<模式名称>',
'table-name' = '<表名称>'
);
以下是关键参数的说明: - hostname: Oracle数据库的IP地址或主机名。 - port: Oracle数据库服务的端口号。 - username/password: 数据库的用户名和密码。 - database-name: 数据库名称。 - schema-name: 模式名称,通常为用户名称。 - table-name: 表名称,支持正则表达式匹配多个表。
如果您尝试下载 flink-sql-connector-oracle-cdc-2.4.2-SNAPSHOT
版本,可能会遇到Maven仓库中找不到该依赖的问题。这是因为SNAPSHOT版本对应开发分支代码,建议使用稳定版本(如 2.4.2
)以避免潜在问题。
如果使用 JsonDebeziumDeserializationSchema
反序列化器时,数值类型显示为字符串,可以通过设置Debezium属性解决:
Properties properties = new Properties();
properties.setProperty("bigint.unsigned.handling.mode", "long");
properties.setProperty("decimal.handling.mode", "double");
MySqlSource.<String>builder()
.hostname(config.getHostname())
...
.debeziumProperties(properties);
虽然这是针对MySQL CDC的配置,但Oracle CDC也可能存在类似问题,建议参考此方法进行调整。
如果您计划将作业升级到更高版本的Flink引擎(如VVR 8.0.9),请注意以下事项: - Source复用功能:从VVR 8.0.7开始支持MySQL CDC Source复用功能,Oracle CDC可能也有类似优化,建议关注官方文档更新。 - Kafka压缩算法支持:VVR 8.0.9新增了对Zstandard(Zstd)压缩算法的支持,如果您使用Kafka作为下游,可以考虑启用该功能以提升传输效率。
通过以上步骤,您可以成功配置并使用 flink-sql-connector-oracle-cdc-2.4.2
连接器。如有其他问题,请随时联系技术支持团队。
实时计算Flink版是阿里云提供的全托管Serverless Flink云服务,基于 Apache Flink 构建的企业级、高性能实时大数据处理系统。提供全托管版 Flink 集群和引擎,提高作业开发运维效率。