diff --git a/docs/en/connector-v2/changelog/connector-fluss.md b/docs/en/connector-v2/changelog/connector-fluss.md
new file mode 100644
index 00000000000..97ff1428167
--- /dev/null
+++ b/docs/en/connector-v2/changelog/connector-fluss.md
@@ -0,0 +1,6 @@
+ Change Log
+
+| Change | Commit | Version |
+|--------|--------|---------|
+
+
diff --git a/docs/en/connector-v2/sink/Fluss.md b/docs/en/connector-v2/sink/Fluss.md
new file mode 100644
index 00000000000..06f70d0a272
--- /dev/null
+++ b/docs/en/connector-v2/sink/Fluss.md
@@ -0,0 +1,352 @@
+import ChangeLog from '../changelog/connector-fluss.md';
+
+# Fluss
+
+> Fluss sink connector
+
+## Support These Engines
+
+> Spark
+> Flink
+> SeaTunnel Zeta
+
+## Key Features
+
+- [ ] [exactly-once](../../concept/connector-v2-features.md)
+- [x] [cdc](../../concept/connector-v2-features.md)
+- [x] [support multiple table write](../../concept/connector-v2-features.md)
+
+## Description
+
+Used to send data to Fluss. Both support streaming and batch mode.
+
+## Using Dependency
+
+ com.alibaba.fluss
+ fluss-client
+ 0.7.0
+
+
+## Sink Options
+
+| Name | Type | Required | Default | Description |
+|-------------------|--------|----------|---------|-------------------------------------------------------------------------------------------------------------|
+| bootstrap.servers | string | yes | - | The bootstrap servers for the Fluss sink connection. |
+| database | string | no | - | The name of Fluss database, If not set, the table name will be the name of the upstream db |
+| table | string | no | - | The name of Fluss table, If not set, the table name will be the name of the upstream table |
+| client.config | Map | no | - | set other client config. Please refer to https://fluss.apache.org/docs/engine-flink/options/#other-options |
+
+
+### database [string]
+
+The name of Fluss database, If not set, the table name will be the name of the upstream db
+
+for example:
+
+1. test_${schema_name}_test
+2. sink_sinkdb
+3. ss_${database_name}
+
+
+### table [string]
+
+The name of Fluss table, If not set, the table name will be the name of the upstream table
+
+for example:
+1. test_${table_name}_test
+2. sink_sinktable
+3. ss_${table_name}
+
+
+## Data Type Mapping
+
+| StarRocks Data type | Fluss Data type |
+|---------------------|-----------------|
+| BOOLEAN | BOOLEAN |
+| TINYINT | TINYINT |
+| SMALLINT | SMALLINT |
+| INT | INT |
+| BIGINT | BIGINT |
+| FLOAT | FLOAT |
+| DOUBLE | DOUBLE |
+| DOUBLE | DOUBLE |
+| BYTES | BYTES |
+| DATE | DATE |
+| TIME | TIME |
+| TIMESTAMP | TIMESTAMP |
+| TIMESTAMP_TZ | TIMESTAMP_TZ |
+| STRING | STRING |
+
+## Task Example
+
+### Simple
+
+```hocon
+env {
+ parallelism = 1
+ job.mode = "BATCH"
+}
+
+source {
+ # This is a example source plugin **only for test and demonstrate the feature source plugin**
+ FakeSource {
+ parallelism = 1
+ tables_configs = [
+ {
+ row.num = 7
+ schema {
+ table = "test.table1"
+ fields {
+ fbytes = bytes
+ fboolean = boolean
+ fint = int
+ ftinyint = tinyint
+ fsmallint = smallint
+ fbigint = bigint
+ ffloat = float
+ fdouble = double
+ fdecimal = "decimal(30, 8)"
+ fstring = string
+ fdate = date
+ ftime = time
+ ftimestamp = timestamp
+ ftimestamp_ltz = timestamp_tz
+ }
+ }
+ rows = [
+ {
+ kind = INSERT
+ fields = ["bWlJWmo=", true, 1940337748, 73, 17489, 7408919466156976747, 9.434991E37, 3.140411637757371E307, 4029933791018936061944.80602290, "aaaaa", "2025-01-03", "02:30:10", "2025-05-27T21:56:09", "2025-09-28T02:54:08+08:00"]
+ }
+ {
+ kind = INSERT
+ fields = ["bWlJWmo=", true, 90650390, 37, 22504, 5851888708829345169, 2.6221706E36, 1.8915341983748786E307, 3093109630614622831876.71725344, "bbbbb", "2025-01-01", "21:22:44", "2025-05-08T05:26:18", "2025-08-04T16:49:45+08:00"]
+ }
+ {
+ kind = INSERT
+ fields = ["bWlJWmo=", true, 2146418323, 79, 19821, 6393905306944584839, 2.0462337E38, 1.4868114385836557E308, 5594947262031769994080.35717665, "ccccc", "2025-10-06", "22:10:40", "2025-03-25T01:49:14", "2025-07-03T11:52:06+08:00"]
+ }
+ {
+ kind = DELETE
+ fields = ["bWlJWmo=", true, 2146418323, 79, 19821, 6393905306944584839, 2.0462337E38, 1.4868114385836557E308, 5594947262031769994080.35717665, "ccccc", "2025-10-06", "22:10:40", "2025-03-25T01:49:14", "2025-07-03T11:52:06+08:00"]
+ }
+ {
+ kind = INSERT
+ fields = ["bWlJWmo=", true, 82794384, 27, 30339, 5826566947079347516, 2.2137477E37, 1.7737681870839753E308, 3984670873242882274814.90739768, "ddddd", "2025-09-13", "10:32:52", "2025-01-27T19:20:51", "2025-11-07T02:38:54+08:00"]
+ }
+ {
+ kind = UPDATE_BEFORE
+ fields = ["bWlJWmo=", true, 82794384, 27, 30339, 5826566947079347516, 2.2137477E37, 1.7737681870839753E308, 3984670873242882274814.90739768, "ddddd", "2025-09-13", "10:32:52", "2025-01-27T19:20:51", "2025-11-07T02:38:54+08:00"]
+ }
+ {
+ kind = UPDATE_AFTER
+ fields = ["bWlJWmo=", true, 388742243, 89, 15831, 159071788675312856, 7.310445E37, 1.2166972324288247E308, 7994947075691901110245.55960937, "ddddd", "2025-01-04", "15:28:07", "2025-07-18T08:59:49", "2025-09-12T23:46:25+08:00"]
+ }
+ ]
+ }
+ ]
+}
+}
+
+transform {
+}
+
+sink {
+ Fluss {
+ bootstrap.servers="fluss_coordinator_e2e:9123"
+ database = "fluss_db_${database_name}"
+ table = "fluss_tb_${table_name}"
+ }
+}
+```
+
+### Multiple table
+
+```hocon
+env {
+ parallelism = 1
+ job.mode = "BATCH"
+}
+
+source {
+ # This is a example source plugin **only for test and demonstrate the feature source plugin**
+ FakeSource {
+ parallelism = 1
+ tables_configs = [
+ {
+ row.num = 7
+ schema {
+ table = "test2.table1"
+ fields {
+ fbytes = bytes
+ fboolean = boolean
+ fint = int
+ ftinyint = tinyint
+ fsmallint = smallint
+ fbigint = bigint
+ ffloat = float
+ fdouble = double
+ fdecimal = "decimal(30, 8)"
+ fstring = string
+ fdate = date
+ ftime = time
+ ftimestamp = timestamp
+ ftimestamp_ltz = timestamp_tz
+ }
+ }
+ rows = [
+ {
+ kind = INSERT
+ fields = ["bWlJWmo=", true, 1940337748, 73, 17489, 7408919466156976747, 9.434991E37, 3.140411637757371E307, 4029933791018936061944.80602290, "aaaaa", "2025-01-03", "02:30:10", "2025-05-27T21:56:09", "2025-09-28T02:54:08+08:00"]
+ }
+ {
+ kind = INSERT
+ fields = ["bWlJWmo=", true, 90650390, 37, 22504, 5851888708829345169, 2.6221706E36, 1.8915341983748786E307, 3093109630614622831876.71725344, "bbbbb", "2025-01-01", "21:22:44", "2025-05-08T05:26:18", "2025-08-04T16:49:45+08:00"]
+ }
+ {
+ kind = INSERT
+ fields = ["bWlJWmo=", true, 2146418323, 79, 19821, 6393905306944584839, 2.0462337E38, 1.4868114385836557E308, 5594947262031769994080.35717665, "ccccc", "2025-10-06", "22:10:40", "2025-03-25T01:49:14", "2025-07-03T11:52:06+08:00"]
+ }
+ {
+ kind = DELETE
+ fields = ["bWlJWmo=", true, 2146418323, 79, 19821, 6393905306944584839, 2.0462337E38, 1.4868114385836557E308, 5594947262031769994080.35717665, "ccccc", "2025-10-06", "22:10:40", "2025-03-25T01:49:14", "2025-07-03T11:52:06+08:00"]
+ }
+ {
+ kind = INSERT
+ fields = ["bWlJWmo=", true, 82794384, 27, 30339, 5826566947079347516, 2.2137477E37, 1.7737681870839753E308, 3984670873242882274814.90739768, "ddddd", "2025-09-13", "10:32:52", "2025-01-27T19:20:51", "2025-11-07T02:38:54+08:00"]
+ }
+ {
+ kind = UPDATE_BEFORE
+ fields = ["bWlJWmo=", true, 82794384, 27, 30339, 5826566947079347516, 2.2137477E37, 1.7737681870839753E308, 3984670873242882274814.90739768, "ddddd", "2025-09-13", "10:32:52", "2025-01-27T19:20:51", "2025-11-07T02:38:54+08:00"]
+ }
+ {
+ kind = UPDATE_AFTER
+ fields = ["bWlJWmo=", true, 388742243, 89, 15831, 159071788675312856, 7.310445E37, 1.2166972324288247E308, 7994947075691901110245.55960937, "ddddd", "2025-01-04", "15:28:07", "2025-07-18T08:59:49", "2025-09-12T23:46:25+08:00"]
+ }
+ ]
+ },
+ {
+ row.num = 7
+ schema {
+ table = "test2.table2"
+ fields {
+ fbytes = bytes
+ fboolean = boolean
+ fint = int
+ ftinyint = tinyint
+ fsmallint = smallint
+ fbigint = bigint
+ ffloat = float
+ fdouble = double
+ fdecimal = "decimal(30, 8)"
+ fstring = string
+ fdate = date
+ ftime = time
+ ftimestamp = timestamp
+ ftimestamp_ltz = timestamp_tz
+ }
+ }
+ rows = [
+ {
+ kind = INSERT
+ fields = ["bWlJWmo=", true, 1940337748, 73, 17489, 7408919466156976747, 9.434991E37, 3.140411637757371E307, 4029933791018936061944.80602290, "aaaaa", "2025-01-03", "02:30:10", "2025-05-27T21:56:09", "2025-09-28T02:54:08+08:00"]
+ }
+ {
+ kind = INSERT
+ fields = ["bWlJWmo=", true, 90650390, 37, 22504, 5851888708829345169, 2.6221706E36, 1.8915341983748786E307, 3093109630614622831876.71725344, "bbbbb", "2025-01-01", "21:22:44", "2025-05-08T05:26:18", "2025-08-04T16:49:45+08:00"]
+ }
+ {
+ kind = INSERT
+ fields = ["bWlJWmo=", true, 2146418323, 79, 19821, 6393905306944584839, 2.0462337E38, 1.4868114385836557E308, 5594947262031769994080.35717665, "ccccc", "2025-10-06", "22:10:40", "2025-03-25T01:49:14", "2025-07-03T11:52:06+08:00"]
+ }
+ {
+ kind = DELETE
+ fields = ["bWlJWmo=", true, 2146418323, 79, 19821, 6393905306944584839, 2.0462337E38, 1.4868114385836557E308, 5594947262031769994080.35717665, "ccccc", "2025-10-06", "22:10:40", "2025-03-25T01:49:14", "2025-07-03T11:52:06+08:00"]
+ }
+ {
+ kind = INSERT
+ fields = ["bWlJWmo=", true, 82794384, 27, 30339, 5826566947079347516, 2.2137477E37, 1.7737681870839753E308, 3984670873242882274814.90739768, "ddddd", "2025-09-13", "10:32:52", "2025-01-27T19:20:51", "2025-11-07T02:38:54+08:00"]
+ }
+ {
+ kind = UPDATE_BEFORE
+ fields = ["bWlJWmo=", true, 82794384, 27, 30339, 5826566947079347516, 2.2137477E37, 1.7737681870839753E308, 3984670873242882274814.90739768, "ddddd", "2025-09-13", "10:32:52", "2025-01-27T19:20:51", "2025-11-07T02:38:54+08:00"]
+ }
+ {
+ kind = UPDATE_AFTER
+ fields = ["bWlJWmo=", true, 388742243, 89, 15831, 159071788675312856, 7.310445E37, 1.2166972324288247E308, 7994947075691901110245.55960937, "ddddd", "2025-01-04", "15:28:07", "2025-07-18T08:59:49", "2025-09-12T23:46:25+08:00"]
+ }
+ ]
+ },
+ {
+ row.num = 7
+ schema {
+ table = "test3.table3"
+ fields {
+ fbytes = bytes
+ fboolean = boolean
+ fint = int
+ ftinyint = tinyint
+ fsmallint = smallint
+ fbigint = bigint
+ ffloat = float
+ fdouble = double
+ fdecimal = "decimal(30, 8)"
+ fstring = string
+ fdate = date
+ ftime = time
+ ftimestamp = timestamp
+ ftimestamp_ltz = timestamp_tz
+ }
+ }
+ rows = [
+ {
+ kind = INSERT
+ fields = ["bWlJWmo=", true, 1940337748, 73, 17489, 7408919466156976747, 9.434991E37, 3.140411637757371E307, 4029933791018936061944.80602290, "aaaaa", "2025-01-03", "02:30:10", "2025-05-27T21:56:09", "2025-09-28T02:54:08+08:00"]
+ }
+ {
+ kind = INSERT
+ fields = ["bWlJWmo=", true, 90650390, 37, 22504, 5851888708829345169, 2.6221706E36, 1.8915341983748786E307, 3093109630614622831876.71725344, "bbbbb", "2025-01-01", "21:22:44", "2025-05-08T05:26:18", "2025-08-04T16:49:45+08:00"]
+ }
+ {
+ kind = INSERT
+ fields = ["bWlJWmo=", true, 2146418323, 79, 19821, 6393905306944584839, 2.0462337E38, 1.4868114385836557E308, 5594947262031769994080.35717665, "ccccc", "2025-10-06", "22:10:40", "2025-03-25T01:49:14", "2025-07-03T11:52:06+08:00"]
+ }
+ {
+ kind = DELETE
+ fields = ["bWlJWmo=", true, 2146418323, 79, 19821, 6393905306944584839, 2.0462337E38, 1.4868114385836557E308, 5594947262031769994080.35717665, "ccccc", "2025-10-06", "22:10:40", "2025-03-25T01:49:14", "2025-07-03T11:52:06+08:00"]
+ }
+ {
+ kind = INSERT
+ fields = ["bWlJWmo=", true, 82794384, 27, 30339, 5826566947079347516, 2.2137477E37, 1.7737681870839753E308, 3984670873242882274814.90739768, "ddddd", "2025-09-13", "10:32:52", "2025-01-27T19:20:51", "2025-11-07T02:38:54+08:00"]
+ }
+ {
+ kind = UPDATE_BEFORE
+ fields = ["bWlJWmo=", true, 82794384, 27, 30339, 5826566947079347516, 2.2137477E37, 1.7737681870839753E308, 3984670873242882274814.90739768, "ddddd", "2025-09-13", "10:32:52", "2025-01-27T19:20:51", "2025-11-07T02:38:54+08:00"]
+ }
+ {
+ kind = UPDATE_AFTER
+ fields = ["bWlJWmo=", true, 388742243, 89, 15831, 159071788675312856, 7.310445E37, 1.2166972324288247E308, 7994947075691901110245.55960937, "ddddd", "2025-01-04", "15:28:07", "2025-07-18T08:59:49", "2025-09-12T23:46:25+08:00"]
+ }
+ ]
+ }
+ ]
+}
+}
+
+transform {
+}
+
+sink {
+ Fluss {
+ bootstrap.servers="fluss_coordinator_e2e:9123"
+ database = "fluss_db_${database_name}"
+ table = "fluss_tb_${table_name}"
+ }
+}
+```
+
+
+## Changelog
+
+
+
diff --git a/docs/zh/connector-v2/changelog/connector-fluss.md b/docs/zh/connector-v2/changelog/connector-fluss.md
new file mode 100644
index 00000000000..97ff1428167
--- /dev/null
+++ b/docs/zh/connector-v2/changelog/connector-fluss.md
@@ -0,0 +1,6 @@
+ Change Log
+
+| Change | Commit | Version |
+|--------|--------|---------|
+
+
diff --git a/docs/zh/connector-v2/sink/Fluss.md b/docs/zh/connector-v2/sink/Fluss.md
new file mode 100644
index 00000000000..bc32f8db8f9
--- /dev/null
+++ b/docs/zh/connector-v2/sink/Fluss.md
@@ -0,0 +1,351 @@
+import ChangeLog from '../changelog/connector-fluss.md';
+
+# Fluss
+
+> Fluss 数据接收器
+
+## 引擎支持
+
+> Spark
+> Flink
+> SeaTunnel Zeta
+
+## 主要特性
+
+- [ ] [精准一次](../../concept/connector-v2-features.md)
+- [x] [cdc](../../concept/connector-v2-features.md)
+- [x] [支持多表写入](../../concept/connector-v2-features.md)
+
+## 描述
+
+该接收器用于将数据写入到Fluss中。支持批和流两种模式。
+
+## 依赖
+
+ com.alibaba.fluss
+ fluss-client
+ 0.7.0
+
+
+
+## 接收器选项
+
+| 名称 | 类型 | 是否必须 | 默认值 | Description |
+|-------------------|--------|------|-----|----------------------------------------------------------------------------------|
+| bootstrap.servers | string | yes | - | fluss 集群地址 |
+| database | string | no | - | 指定目标 Fluss 表所在的数据库的名称, 如果没有设置该值,则表名与上游库名相同 |
+| table | string | no | - | 指定目标 Fluss 表的名称, 如果没有设置该值,则表名与上游表名相同 |
+| client.config | Map | no | - | 设置其他客户端配置. 参考 https://fluss.apache.org/docs/engine-flink/options/#other-options |
+
+
+### database [string]
+
+database选项参数可以填入一任意库名,这个名字最终会被用作目标表的库名,并且支持变量(`${database_name}`,`${schema_name}`)。
+替换规则如下:`${schema_name}` 将替换传递给目标端的 SCHEMA 名称,`${database_name}` 将替换传递给目标端的库名。
+
+例如:
+1. test_${schema_name}_test
+2. sink_sinkdb
+3. ss_${database_name}
+
+
+### table [string]
+
+table选项参数可以填入一任意表名,这个名字最终会被用作目标表的表名,并且支持变量(`${table_name}`,`${schema_name}`)。
+替换规则如下:`${schema_name}` 将替换传递给目标端的 SCHEMA 名称,`${table_name}` 将替换传递给目标端的表名。
+
+例如:
+1. test_${schema_name}_test
+2. sink_sinktable
+3. ss_${table_name}
+
+## 数据类型映射
+
+| FLuss数据类型 | SeaTunnel数据类型 |
+|--------------|---------------|
+| BOOLEAN | BOOLEAN |
+| TINYINT | TINYINT |
+| SMALLINT | SMALLINT |
+| INT | INT |
+| BIGINT | BIGINT |
+| FLOAT | FLOAT |
+| DOUBLE | DOUBLE |
+| DOUBLE | DOUBLE |
+| BYTES | BYTES |
+| DATE | DATE |
+| TIME | TIME |
+| TIMESTAMP | TIMESTAMP |
+| TIMESTAMP_TZ | TIMESTAMP_TZ |
+| STRING | STRING |
+
+
+## 任务示例
+
+### 简单示例
+
+```hocon
+env {
+ parallelism = 1
+ job.mode = "BATCH"
+}
+
+source {
+ # This is a example source plugin **only for test and demonstrate the feature source plugin**
+ FakeSource {
+ parallelism = 1
+ tables_configs = [
+ {
+ row.num = 7
+ schema {
+ table = "test.table1"
+ fields {
+ fbytes = bytes
+ fboolean = boolean
+ fint = int
+ ftinyint = tinyint
+ fsmallint = smallint
+ fbigint = bigint
+ ffloat = float
+ fdouble = double
+ fdecimal = "decimal(30, 8)"
+ fstring = string
+ fdate = date
+ ftime = time
+ ftimestamp = timestamp
+ ftimestamp_ltz = timestamp_tz
+ }
+ }
+ rows = [
+ {
+ kind = INSERT
+ fields = ["bWlJWmo=", true, 1940337748, 73, 17489, 7408919466156976747, 9.434991E37, 3.140411637757371E307, 4029933791018936061944.80602290, "aaaaa", "2025-01-03", "02:30:10", "2025-05-27T21:56:09", "2025-09-28T02:54:08+08:00"]
+ }
+ {
+ kind = INSERT
+ fields = ["bWlJWmo=", true, 90650390, 37, 22504, 5851888708829345169, 2.6221706E36, 1.8915341983748786E307, 3093109630614622831876.71725344, "bbbbb", "2025-01-01", "21:22:44", "2025-05-08T05:26:18", "2025-08-04T16:49:45+08:00"]
+ }
+ {
+ kind = INSERT
+ fields = ["bWlJWmo=", true, 2146418323, 79, 19821, 6393905306944584839, 2.0462337E38, 1.4868114385836557E308, 5594947262031769994080.35717665, "ccccc", "2025-10-06", "22:10:40", "2025-03-25T01:49:14", "2025-07-03T11:52:06+08:00"]
+ }
+ {
+ kind = DELETE
+ fields = ["bWlJWmo=", true, 2146418323, 79, 19821, 6393905306944584839, 2.0462337E38, 1.4868114385836557E308, 5594947262031769994080.35717665, "ccccc", "2025-10-06", "22:10:40", "2025-03-25T01:49:14", "2025-07-03T11:52:06+08:00"]
+ }
+ {
+ kind = INSERT
+ fields = ["bWlJWmo=", true, 82794384, 27, 30339, 5826566947079347516, 2.2137477E37, 1.7737681870839753E308, 3984670873242882274814.90739768, "ddddd", "2025-09-13", "10:32:52", "2025-01-27T19:20:51", "2025-11-07T02:38:54+08:00"]
+ }
+ {
+ kind = UPDATE_BEFORE
+ fields = ["bWlJWmo=", true, 82794384, 27, 30339, 5826566947079347516, 2.2137477E37, 1.7737681870839753E308, 3984670873242882274814.90739768, "ddddd", "2025-09-13", "10:32:52", "2025-01-27T19:20:51", "2025-11-07T02:38:54+08:00"]
+ }
+ {
+ kind = UPDATE_AFTER
+ fields = ["bWlJWmo=", true, 388742243, 89, 15831, 159071788675312856, 7.310445E37, 1.2166972324288247E308, 7994947075691901110245.55960937, "ddddd", "2025-01-04", "15:28:07", "2025-07-18T08:59:49", "2025-09-12T23:46:25+08:00"]
+ }
+ ]
+ }
+ ]
+}
+}
+
+transform {
+}
+
+sink {
+ Fluss {
+ bootstrap.servers="fluss_coordinator_e2e:9123"
+ database = "fluss_db_${database_name}"
+ table = "fluss_tb_${table_name}"
+ }
+}
+```
+### 多表写入
+
+```hocon
+env {
+ parallelism = 1
+ job.mode = "BATCH"
+}
+
+source {
+ # This is a example source plugin **only for test and demonstrate the feature source plugin**
+ FakeSource {
+ parallelism = 1
+ tables_configs = [
+ {
+ row.num = 7
+ schema {
+ table = "test2.table1"
+ fields {
+ fbytes = bytes
+ fboolean = boolean
+ fint = int
+ ftinyint = tinyint
+ fsmallint = smallint
+ fbigint = bigint
+ ffloat = float
+ fdouble = double
+ fdecimal = "decimal(30, 8)"
+ fstring = string
+ fdate = date
+ ftime = time
+ ftimestamp = timestamp
+ ftimestamp_ltz = timestamp_tz
+ }
+ }
+ rows = [
+ {
+ kind = INSERT
+ fields = ["bWlJWmo=", true, 1940337748, 73, 17489, 7408919466156976747, 9.434991E37, 3.140411637757371E307, 4029933791018936061944.80602290, "aaaaa", "2025-01-03", "02:30:10", "2025-05-27T21:56:09", "2025-09-28T02:54:08+08:00"]
+ }
+ {
+ kind = INSERT
+ fields = ["bWlJWmo=", true, 90650390, 37, 22504, 5851888708829345169, 2.6221706E36, 1.8915341983748786E307, 3093109630614622831876.71725344, "bbbbb", "2025-01-01", "21:22:44", "2025-05-08T05:26:18", "2025-08-04T16:49:45+08:00"]
+ }
+ {
+ kind = INSERT
+ fields = ["bWlJWmo=", true, 2146418323, 79, 19821, 6393905306944584839, 2.0462337E38, 1.4868114385836557E308, 5594947262031769994080.35717665, "ccccc", "2025-10-06", "22:10:40", "2025-03-25T01:49:14", "2025-07-03T11:52:06+08:00"]
+ }
+ {
+ kind = DELETE
+ fields = ["bWlJWmo=", true, 2146418323, 79, 19821, 6393905306944584839, 2.0462337E38, 1.4868114385836557E308, 5594947262031769994080.35717665, "ccccc", "2025-10-06", "22:10:40", "2025-03-25T01:49:14", "2025-07-03T11:52:06+08:00"]
+ }
+ {
+ kind = INSERT
+ fields = ["bWlJWmo=", true, 82794384, 27, 30339, 5826566947079347516, 2.2137477E37, 1.7737681870839753E308, 3984670873242882274814.90739768, "ddddd", "2025-09-13", "10:32:52", "2025-01-27T19:20:51", "2025-11-07T02:38:54+08:00"]
+ }
+ {
+ kind = UPDATE_BEFORE
+ fields = ["bWlJWmo=", true, 82794384, 27, 30339, 5826566947079347516, 2.2137477E37, 1.7737681870839753E308, 3984670873242882274814.90739768, "ddddd", "2025-09-13", "10:32:52", "2025-01-27T19:20:51", "2025-11-07T02:38:54+08:00"]
+ }
+ {
+ kind = UPDATE_AFTER
+ fields = ["bWlJWmo=", true, 388742243, 89, 15831, 159071788675312856, 7.310445E37, 1.2166972324288247E308, 7994947075691901110245.55960937, "ddddd", "2025-01-04", "15:28:07", "2025-07-18T08:59:49", "2025-09-12T23:46:25+08:00"]
+ }
+ ]
+ },
+ {
+ row.num = 7
+ schema {
+ table = "test2.table2"
+ fields {
+ fbytes = bytes
+ fboolean = boolean
+ fint = int
+ ftinyint = tinyint
+ fsmallint = smallint
+ fbigint = bigint
+ ffloat = float
+ fdouble = double
+ fdecimal = "decimal(30, 8)"
+ fstring = string
+ fdate = date
+ ftime = time
+ ftimestamp = timestamp
+ ftimestamp_ltz = timestamp_tz
+ }
+ }
+ rows = [
+ {
+ kind = INSERT
+ fields = ["bWlJWmo=", true, 1940337748, 73, 17489, 7408919466156976747, 9.434991E37, 3.140411637757371E307, 4029933791018936061944.80602290, "aaaaa", "2025-01-03", "02:30:10", "2025-05-27T21:56:09", "2025-09-28T02:54:08+08:00"]
+ }
+ {
+ kind = INSERT
+ fields = ["bWlJWmo=", true, 90650390, 37, 22504, 5851888708829345169, 2.6221706E36, 1.8915341983748786E307, 3093109630614622831876.71725344, "bbbbb", "2025-01-01", "21:22:44", "2025-05-08T05:26:18", "2025-08-04T16:49:45+08:00"]
+ }
+ {
+ kind = INSERT
+ fields = ["bWlJWmo=", true, 2146418323, 79, 19821, 6393905306944584839, 2.0462337E38, 1.4868114385836557E308, 5594947262031769994080.35717665, "ccccc", "2025-10-06", "22:10:40", "2025-03-25T01:49:14", "2025-07-03T11:52:06+08:00"]
+ }
+ {
+ kind = DELETE
+ fields = ["bWlJWmo=", true, 2146418323, 79, 19821, 6393905306944584839, 2.0462337E38, 1.4868114385836557E308, 5594947262031769994080.35717665, "ccccc", "2025-10-06", "22:10:40", "2025-03-25T01:49:14", "2025-07-03T11:52:06+08:00"]
+ }
+ {
+ kind = INSERT
+ fields = ["bWlJWmo=", true, 82794384, 27, 30339, 5826566947079347516, 2.2137477E37, 1.7737681870839753E308, 3984670873242882274814.90739768, "ddddd", "2025-09-13", "10:32:52", "2025-01-27T19:20:51", "2025-11-07T02:38:54+08:00"]
+ }
+ {
+ kind = UPDATE_BEFORE
+ fields = ["bWlJWmo=", true, 82794384, 27, 30339, 5826566947079347516, 2.2137477E37, 1.7737681870839753E308, 3984670873242882274814.90739768, "ddddd", "2025-09-13", "10:32:52", "2025-01-27T19:20:51", "2025-11-07T02:38:54+08:00"]
+ }
+ {
+ kind = UPDATE_AFTER
+ fields = ["bWlJWmo=", true, 388742243, 89, 15831, 159071788675312856, 7.310445E37, 1.2166972324288247E308, 7994947075691901110245.55960937, "ddddd", "2025-01-04", "15:28:07", "2025-07-18T08:59:49", "2025-09-12T23:46:25+08:00"]
+ }
+ ]
+ },
+ {
+ row.num = 7
+ schema {
+ table = "test3.table3"
+ fields {
+ fbytes = bytes
+ fboolean = boolean
+ fint = int
+ ftinyint = tinyint
+ fsmallint = smallint
+ fbigint = bigint
+ ffloat = float
+ fdouble = double
+ fdecimal = "decimal(30, 8)"
+ fstring = string
+ fdate = date
+ ftime = time
+ ftimestamp = timestamp
+ ftimestamp_ltz = timestamp_tz
+ }
+ }
+ rows = [
+ {
+ kind = INSERT
+ fields = ["bWlJWmo=", true, 1940337748, 73, 17489, 7408919466156976747, 9.434991E37, 3.140411637757371E307, 4029933791018936061944.80602290, "aaaaa", "2025-01-03", "02:30:10", "2025-05-27T21:56:09", "2025-09-28T02:54:08+08:00"]
+ }
+ {
+ kind = INSERT
+ fields = ["bWlJWmo=", true, 90650390, 37, 22504, 5851888708829345169, 2.6221706E36, 1.8915341983748786E307, 3093109630614622831876.71725344, "bbbbb", "2025-01-01", "21:22:44", "2025-05-08T05:26:18", "2025-08-04T16:49:45+08:00"]
+ }
+ {
+ kind = INSERT
+ fields = ["bWlJWmo=", true, 2146418323, 79, 19821, 6393905306944584839, 2.0462337E38, 1.4868114385836557E308, 5594947262031769994080.35717665, "ccccc", "2025-10-06", "22:10:40", "2025-03-25T01:49:14", "2025-07-03T11:52:06+08:00"]
+ }
+ {
+ kind = DELETE
+ fields = ["bWlJWmo=", true, 2146418323, 79, 19821, 6393905306944584839, 2.0462337E38, 1.4868114385836557E308, 5594947262031769994080.35717665, "ccccc", "2025-10-06", "22:10:40", "2025-03-25T01:49:14", "2025-07-03T11:52:06+08:00"]
+ }
+ {
+ kind = INSERT
+ fields = ["bWlJWmo=", true, 82794384, 27, 30339, 5826566947079347516, 2.2137477E37, 1.7737681870839753E308, 3984670873242882274814.90739768, "ddddd", "2025-09-13", "10:32:52", "2025-01-27T19:20:51", "2025-11-07T02:38:54+08:00"]
+ }
+ {
+ kind = UPDATE_BEFORE
+ fields = ["bWlJWmo=", true, 82794384, 27, 30339, 5826566947079347516, 2.2137477E37, 1.7737681870839753E308, 3984670873242882274814.90739768, "ddddd", "2025-09-13", "10:32:52", "2025-01-27T19:20:51", "2025-11-07T02:38:54+08:00"]
+ }
+ {
+ kind = UPDATE_AFTER
+ fields = ["bWlJWmo=", true, 388742243, 89, 15831, 159071788675312856, 7.310445E37, 1.2166972324288247E308, 7994947075691901110245.55960937, "ddddd", "2025-01-04", "15:28:07", "2025-07-18T08:59:49", "2025-09-12T23:46:25+08:00"]
+ }
+ ]
+ }
+ ]
+}
+}
+
+transform {
+}
+
+sink {
+ Fluss {
+ bootstrap.servers="fluss_coordinator_e2e:9123"
+ database = "fluss_db_${database_name}"
+ table = "fluss_tb_${table_name}"
+ }
+}
+```
+
+## 变更日志
+
+
diff --git a/plugin-mapping.properties b/plugin-mapping.properties
index 4172161f5e4..74b84a47582 100644
--- a/plugin-mapping.properties
+++ b/plugin-mapping.properties
@@ -150,6 +150,7 @@ seatunnel.sink.GraphQL = connector-graphql
seatunnel.sink.Aerospike = connector-aerospike
seatunnel.sink.SensorsData = connector-sensorsdata
seatunnel.sink.HugeGraph = connector-hugegraph
+seatunnel.sink.Fluss = connector-fluss
# For custom transforms, make sure to use the seatunnel.transform.[PluginIdentifier]=[JarPerfix] naming convention. For example:
# seatunnel.transform.Sql = seatunnel-transforms-v2
diff --git a/seatunnel-connectors-v2/connector-fluss/pom.xml b/seatunnel-connectors-v2/connector-fluss/pom.xml
new file mode 100644
index 00000000000..8db032b6f90
--- /dev/null
+++ b/seatunnel-connectors-v2/connector-fluss/pom.xml
@@ -0,0 +1,51 @@
+
+
+
+ 4.0.0
+
+ org.apache.seatunnel
+ seatunnel-connectors-v2
+ ${revision}
+
+
+ connector-fluss
+ SeaTunnel : Connectors V2 : Fluss
+
+
+ 0.7.0
+ connector.fluss
+
+
+
+
+ org.apache.seatunnel
+ seatunnel-api
+ ${project.version}
+
+
+ org.apache.seatunnel
+ connector-common
+ ${project.version}
+
+
+ com.alibaba.fluss
+ fluss-client
+ ${fluss.client.version}
+
+
+
+
diff --git a/seatunnel-connectors-v2/connector-fluss/src/main/java/org/apache/seatunnel/connectors/seatunnel/fluss/config/FlussBaseOptions.java b/seatunnel-connectors-v2/connector-fluss/src/main/java/org/apache/seatunnel/connectors/seatunnel/fluss/config/FlussBaseOptions.java
new file mode 100644
index 00000000000..e582c760ec3
--- /dev/null
+++ b/seatunnel-connectors-v2/connector-fluss/src/main/java/org/apache/seatunnel/connectors/seatunnel/fluss/config/FlussBaseOptions.java
@@ -0,0 +1,49 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.seatunnel.connectors.seatunnel.fluss.config;
+
+import org.apache.seatunnel.api.configuration.Option;
+import org.apache.seatunnel.api.configuration.Options;
+
+import java.io.Serializable;
+import java.util.Map;
+
+public class FlussBaseOptions implements Serializable {
+ public static final String CONNECTOR_IDENTITY = "Fluss";
+ public static final Option BOOTSTRAP_SERVERS =
+ Options.key("bootstrap.servers")
+ .stringType()
+ .noDefaultValue()
+ .withDescription("Fluss cluster address");
+ public static final Option DATABASE =
+ Options.key("database")
+ .stringType()
+ .noDefaultValue()
+ .withDescription("The name of Fluss database");
+
+ public static final Option TABLE =
+ Options.key("table")
+ .stringType()
+ .noDefaultValue()
+ .withDescription("The name of Fluss table");
+
+ public static final Option