跳到主要内容

StarRocks 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 文件的方法

  • 直接从 Maven 中央仓库下载 Flink connector JAR 文件。
  • 在 Maven 项目的 pom.xml 文件中添加 Flink connector 作为依赖项并下载它。具体操作说明,请参阅用户指南
  • 将源代码编译为 Flink connector JAR 文件。具体操作说明,请参阅用户指南

版本要求

连接器FlinkStarRocksJavaScala
1.2.111.15,1.16,1.17,1.18,1.19,1.202.1 及更高版本82.11,2.12
1.2.101.15,1.16,1.17,1.18,1.192.1 及更高版本82.11,2.12
1.2.91.15,1.16,1.17,1.182.1 及更高版本82.11,2.12
1.2.81.13,1.14,1.15,1.16,1.172.1 及更高版本82.11,2.12
1.2.71.11,1.12,1.13,1.14,1.152.1 及更高版本82.11,2.12

注意

一般来说,最新版本的 Flink 连接器仅保持与最近三个 Flink 版本的兼容性。

版本说明

1.2

Release 1.2.11

发布日期:2025 年 6 月 3 日

功能

  • 支持 CSV 格式的 LZ4 压缩。#408
  • 增加了对 Flink 1.20 的支持。#409

改进

  • 增加了一个选项来禁用将 JSON 包装到 JSON 数组中。#344
  • 更新了 FastJSON 以解决 CVE-2022-25845。#394
  • 从警告日志中删除了数据行指标,以避免在日志中暴露负载。#420

Bug 修复

  • 由 StarRocksDynamicTableSource 的影子克隆引起的错误下推结果(修复后,将使用 StarRocksDynamicTableSource 的深拷贝)。#421

1.2.10

功能

  • 支持读取 JSON 列。#334
  • 支持读取 ARRAY、STRUCT 和 MAP 列。#347
  • 在使用 JSON 格式接收数据时支持 LZ4 压缩。#354
  • 支持 Flink 1.19。#379

改进

  • 支持配置 socket 超时。#319
  • Stream Load 事务接口支持异步 preparecommit 操作。#328
  • 支持将 StarRocks 表中的列子集映射到 Flink 源表。#352
  • 支持在使用 Stream Load 事务接口时设置特定的 warehouse。#361

Bug 修复

修复了以下问题

  • 数据读取完成后,StarRocksDynamicLookupFunction 中的 StarRocksSourceBeReader 未关闭。#351
  • 将空 JSON 字符串加载到 JSON 列时抛出异常。#380

1.2.9

此版本包括一些特性和错误修复。值得注意的是,Flink connector 与 Flink CDC 3.0 集成,可以轻松地构建从 CDC 源(如 MySQL 和 Kafka)到 StarRocks 的流式 ELT 管道。您可以查看使用 Flink CDC 3.0 同步数据(支持模式更改)以获取详细信息。

功能

  • 实现目录以支持 Flink CDC 3.0。#295
  • FLP-191 中实现新的 sink API,以支持 Flink CDC 3.0。#301
  • 支持 Flink 1.18。#305

Bug 修复

  • 修复误导性的线程名称和日志。#290
  • 修复用于写入多个表的错误的 stream-load-sdk 配置。#298

1.2.8

此版本包括一些改进和错误修复。值得注意的变化如下

  • 支持 Flink 1.16 和 1.17。
  • 建议在配置接收器以保证 exactly-once 语义时设置 sink.label-prefix。有关具体说明,请参阅Exactly Once

改进

  • 支持配置是否使用 Stream Load 事务接口来保证 at-least-once。#228
  • 为 sink V1 添加重试指标。#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
  • 对 DefaultStreamLoader#close 使用 info 日志。#243
  • 支持生成不带依赖项的 stream-load-sdk JAR 文件。#245
  • 在 stream-load-sdk 中用 jackson 替换 fastjson。#247
  • 支持处理 update_before 记录。#250
  • 将 Apache 许可证添加到文件中。#251
  • 支持在 stream-load-sdk 中获取异常。#252
  • 默认启用 strip_outer_arrayignore_json_size#259
  • 当 Flink 作业恢复且 sink 语义为 exactly-once 时,尝试清理遗留事务。#271
  • 重试失败后返回第一个异常。#279

Bug 修复

  • 修复 StarRocksStreamLoadVisitor 中的拼写错误。#230
  • 修复 fastjson 类加载器泄漏。#260

测试

  • 添加了从 Kafka 加载到 StarRocks 的测试框架。#249

文档

  • 重构文档。#262
  • 改进 sink 的文档。#268 #275
  • 为 sink 添加 DataStream API 示例。#253