Flink connector 版本发布
发布说明
使用文档:
源码下载地址:starrocks-connector-for-apache-flink
JAR 包命名规则:
- Flink 1.15 及之后:
flink-connector-starrocks-${connector_version}_flink-${flink_version}.jar
- Flink 1.15 之前:
flink-connector-starrocks-${connector_version}_flink-${flink_version}_${scala_version}.jar
JAR 包获取方式:
您可以通过以下方式获取 Flink connector 的 JAR 包:
- 从 Maven Central Repository 直接下载编译好的 JAR 包。
- 在 Maven 项目的 pom 文件添加 Flink connector 为依赖项,作为依赖下载。具体方式,参见使用文档。
- 使用源码手动编译成 JAR 包。具体方式,参见使用文档。
版本要求:
Connector | Flink | StarRocks | Java | Scala |
---|---|---|---|---|
1.2.9 | 1.15 ~ 1.18 | 2.1 及以上 | 8 | 2.11、2.12 |
1.2.8 | 1.13 ~ 1.17 | 2.1 及以上 | 8 | 2.11、2.12 |
1.2.7 | 1.11 ~ 1.15 | 2.1 及以上 | 8 | 2.11、2.12 |
注意
最新版本的 Flink connector 只维护最近3个版本的 Flink。
发布记录
1.2
1.2.10
新增特性
功能优化
- 支持配置 Socket 超时时间。#319
- Stream Load 事务接口支持异步
prepare
和commit
操作。#328 - 支持将 StarRocks 表中的部分列映射到 Flink 源表。#352
- 支持在使用 Stream Load 事务接口时指定 Warehouse。#361
问题修复
修复了如下问题:
StarRocksDynamicLookupFunction
中的StarRocksSourceBeReader
在数据读取完成后未关闭。#351- 将空 JSON 字符串导入到 JSON 列时会抛出异常。#380
1.2.9
本版本发布包含如下新增特性和问题修复。值得注意的变化是,Flink connector 已与 Flink CDC 3.0 集成,可轻松地从 CDC 数据源(如 MySQL、Kafka)构建流式 ELT 管道到 StarRocks。更多信息,您参见 Flink CDC 同步(支持 schema change)。
新增特性
- 实现 catalog 以支持 Flink CDC 3.0。#295
- 实现 FLP-191中的新 Sink API,以支持Flink CDC 3.0。#301
- 支持 Flink 1.18。#305
问题修复
1.2.8
本版本发布包含如下功能优化和问题修复。其中重点优化如下:
- 支持 Flink 1.16 和 1.17。
- Sink 语义配置为 exactly-once 时建议设置
sink.label-prefix
。使用说明,参考 Exactly Once。
功能优化
- 支持配置是否使用 Stream Load 事务接口来实现 at-least-once 语义。#228
- 为 sink 版本 V1 添加 retry 指标。#229
- 如果 EXISTING_JOB_STATUS 为 FINISHED,无需 getLabelState。#231
- 移除 sink 版本 V1 中无用的堆栈跟踪日志。#232
- [重构] 将 StarRocksSinkManagerV2 移动到 stream-load-sdk。#233
- 根据 Flink 中的表结构自动判断数据导入是否仅更新部分列,而不需要用户显式指定参数
sink.properties.columns
。#235 - [重构] 将 probeTransactionStreamLoad 移动到 stream-load-sdk。 #240
- 为 stream-load-sdk 添加 git-commit-id-plugin。#242
- 在 info 级别的 log 中记录 DefaultStreamLoader#close。#243
- stream-load-sdk 支持生成不包含依赖的 jar。#245
- 在 stream-load-sdk 中使用 jackson 替换 fastjson。#247
- 支持处理 update_before 记录。#250
- 在文件中添加 Apache license。#251
- 支持获取 stream-load-sdk 返回的异常信息。#252
- 默认启用
strip_outer_array
和ignore_json_size
。#259 - 如果 sink 语义为 exactly-once,当 Flink job 恢复后,Flink connector 会尝试清理 StarRocks 中未包含在checkpoint 中的未完 成事务。#271
- 重试失败后返回第一次的异常信息。#279
问题修复
测试
- 增加从 Kafka 导入 StarRock 的测试框架。#249
文档