This is an automated email from the ASF dual-hosted git repository.
zhangshenghang pushed a commit to branch dev
in repository https://gitbox.apache.org/repos/asf/seatunnel.git
The following commit(s) were added to refs/heads/dev by this push:
new ba32911485 [Docs][Connector-V2] Improve EdgeSocket FakeSource and
Fluss docs (#11315)
ba32911485 is described below
commit ba329114855d21884de803f461df7f9832d1e913
Author: Daniel Carter <[email protected]>
AuthorDate: Sat Jul 4 09:53:38 2026 +0800
[Docs][Connector-V2] Improve EdgeSocket FakeSource and Fluss docs (#11315)
Co-authored-by: DanielCarter-stack
<[email protected]>
---
docs/en/connectors/sink/Fluss.md | 394 ++++++++++---------------------
docs/en/connectors/source/FakeSource.md | 17 +-
docs/zh/connectors/sink/Fluss.md | 401 ++++++++++----------------------
docs/zh/connectors/source/EdgeSocket.md | 12 +-
docs/zh/connectors/source/FakeSource.md | 19 +-
5 files changed, 272 insertions(+), 571 deletions(-)
diff --git a/docs/en/connectors/sink/Fluss.md b/docs/en/connectors/sink/Fluss.md
index a6f8141e29..568ec7a274 100644
--- a/docs/en/connectors/sink/Fluss.md
+++ b/docs/en/connectors/sink/Fluss.md
@@ -4,7 +4,7 @@ import ChangeLog from '../changelog/connector-fluss.md';
> Fluss sink connector
-## Support These Engines
+## Supported Engines
> Spark<br/>
> Flink<br/>
@@ -19,68 +19,101 @@ import ChangeLog from '../changelog/connector-fluss.md';
## Description
-Used to send data to Fluss. Both support streaming and batch mode.
+The Fluss sink writes SeaTunnel rows into existing Fluss tables in batch or
streaming jobs.
-## Using Dependency
- <dependency>
- <groupId>com.alibaba.fluss</groupId>
- <artifactId>fluss-client</artifactId>
- <version>0.7.0</version>
- </dependency>
+The connector opens an upsert writer when the target Fluss table has a primary
key. In this mode, `INSERT` and `UPDATE_AFTER` rows are written as upserts,
`DELETE` rows are written as deletes, and `UPDATE_BEFORE` rows are ignored. If
the target table has no primary key, the connector opens an append writer;
`INSERT` and `UPDATE_AFTER` rows are appended, while `DELETE` and
`UPDATE_BEFORE` rows are ignored.
+
+The Fluss database and table must already exist before the job starts. The
sink does not create Fluss databases or tables.
+
+## Dependency
+
+```xml
+<dependency>
+ <groupId>com.alibaba.fluss</groupId>
+ <artifactId>fluss-client</artifactId>
+ <version>0.7.0</version>
+</dependency>
+```
## 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 |
+| Name | Type | Required | Default | Description |
+|---|---|---|---|---|
+| bootstrap.servers | string | yes | - | Fluss coordinator address, for
example `fluss-coordinator:9123`. |
+| database | string | no | upstream database name | Target Fluss database.
Supports placeholders such as `${database_name}` and `${schema_name}`. |
+| table | string | no | upstream table name | Target Fluss table. Supports
placeholders such as `${table_name}` and `${schema_name}`. |
+| client.config | map | no | - | Extra Fluss client options passed to the
Fluss connection. |
+| multi_table_sink_replica | int | no | 1 | Number of writer replicas for
multi-table sink mode. |
+| common-options | - | no | - | Sink common options. See [Sink Common
Options](../common-options/sink-common-options.md). |
+
+### database
+When `database` is not configured, the sink uses the upstream database name
from the input table identifier.
-### database [string]
+You can configure a fixed database name:
-The name of Fluss database, If not set, the table name will be the name of the
upstream db
+```hocon
+database = "target_db"
+```
-for example:
+You can also use placeholders:
-1. test_${schema_name}_test
-2. sink_sinkdb
-3. ss_${database_name}
+```hocon
+database = "fluss_${database_name}"
+database = "fluss_${schema_name}"
+```
+### table
-### table [string]
+When `table` is not configured, the sink uses the upstream table name from the
input table identifier.
-The name of Fluss table, If not set, the table name will be the name of the
upstream table
+You can configure a fixed table name:
-for example:
-1. test_${table_name}_test
-2. sink_sinktable
-3. ss_${table_name}
+```hocon
+table = "target_table"
+```
+You can also use placeholders:
+
+```hocon
+table = "fluss_${table_name}"
+table = "fluss_${schema_name}_${table_name}"
+```
+
+### client.config
+
+Use `client.config` to pass additional Fluss client settings.
+
+```hocon
+client.config = {
+ request.timeout = "30s"
+}
+```
+
+Refer to the Fluss client documentation for supported keys.
## 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
+| SeaTunnel Data Type | Fluss Data Type |
+|---|---|
+| BOOLEAN | BOOLEAN |
+| TINYINT | TINYINT |
+| SMALLINT | SMALLINT |
+| INT | INT |
+| BIGINT | BIGINT |
+| FLOAT | FLOAT |
+| DOUBLE | DOUBLE |
+| DECIMAL | DECIMAL |
+| BYTES | BYTES |
+| STRING | STRING |
+| DATE | DATE |
+| TIME | TIME |
+| TIMESTAMP | TIMESTAMP |
+| TIMESTAMP_TZ | TIMESTAMP_LTZ |
+
+## Task Examples
+
+### Single table
```hocon
env {
@@ -89,79 +122,36 @@ env {
}
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"]
+ row.num = 3
+ schema {
+ table = "test.table1"
+ fields {
+ id = int
+ name = string
+ score = double
}
- {
- 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 {
+ rows = [
+ { kind = INSERT, fields = [1, "Alice", 98.5] }
+ { kind = INSERT, fields = [2, "Bob", 88.0] }
+ { kind = UPDATE_AFTER, fields = [2, "Bob", 90.0] }
+ ]
+ }
}
sink {
Fluss {
- bootstrap.servers="fluss_coordinator_e2e:9123"
- database = "fluss_db_${database_name}"
- table = "fluss_tb_${table_name}"
+ bootstrap.servers = "fluss-coordinator:9123"
+ database = "fluss_${database_name}"
+ table = "fluss_${table_name}"
}
}
```
-### Multiple table
+In this example, the upstream table `test.table1` is written to Fluss table
`fluss_test.fluss_table1`.
+
+### Multiple tables
```hocon
env {
@@ -170,184 +160,44 @@ env {
}
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 = 2
+ schema {
+ table = "test.table1"
+ fields {
+ id = int
+ name = string
+ }
+ }
+ },
+ {
+ row.num = 2
+ schema {
+ table = "test.table2"
+ fields {
+ id = int
+ name = string
+ }
+ }
}
]
- },
- {
- 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}"
+ bootstrap.servers = "fluss-coordinator:9123"
+ database = "fluss_${database_name}"
+ table = "fluss_${table_name}"
+ multi_table_sink_replica = 1
}
}
```
+The sink resolves the target table separately for each upstream table. Before
running the job, create the matching Fluss databases and tables.
## Changelog
<ChangeLog />
-
diff --git a/docs/en/connectors/source/FakeSource.md
b/docs/en/connectors/source/FakeSource.md
index 59a9a72c2c..fad1de686f 100644
--- a/docs/en/connectors/source/FakeSource.md
+++ b/docs/en/connectors/source/FakeSource.md
@@ -4,7 +4,7 @@ import ChangeLog from '../changelog/connector-fake.md';
> FakeSource connector
-## Support Those Engines
+## Supported Engines
> Spark<br/>
> Flink<br/>
@@ -12,8 +12,7 @@ import ChangeLog from '../changelog/connector-fake.md';
## Description
-The FakeSource is a virtual data source, which randomly generates the number
of rows according to the data structure of the user-defined schema,
-just for some test cases such as type conversion or connector new feature
testing
+FakeSource is a virtual source that generates rows from a user-defined schema.
It is mainly used for demos, connector tests, type conversion checks, and local
pipeline verification.
## Key Features
@@ -28,14 +27,14 @@ just for some test cases such as type conversion or
connector new feature testin
| Name | Type | Required | Default |
Description
|
|-------------------------|----------|----------|-------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
-| tables_configs | list | no | - |
Define Multiple FakeSource, each item can contains the whole fake source config
description below
|
-| schema | config | yes | - |
Define Schema information. For more details, please refer to [Schema
Feature](../../introduction/concepts/schema-feature.md).
|
+| tables_configs | list | no | - |
Defines multiple FakeSource tables. Each item can contain the same options as a
single FakeSource block, including its own schema and rows. Use either
`tables_configs` or top-level `schema`. |
+| schema | config | conditionally yes | - |
Defines schema information. Required when `tables_configs` is not configured.
For more details, see [Schema
Feature](../../introduction/concepts/schema-feature.md). |
| auto.increment.enabled | boolean | no | false |
Enable auto increment ID generation
|
-| auto.increment.start | int | no | |
Starting value for auto increment ID
|
+| auto.increment.start | long | no | 1 |
Starting value for auto increment ID. This option only takes effect when
`auto.increment.enabled` is `true`. |
| rows | config | no | - |
The row list of fake data output per degree of parallelism see title `Options
rows Case`.
|
| row.num | int | no | 5 |
The total number of data generated per degree of parallelism
|
| split.num | int | no | 1 |
the number of splits generated by the enumerator for each degree of parallelism
|
-| split.read-interval | long | no | 1 |
The interval(mills) between two split reads in a reader
|
+| split.read-interval | int | no | 1 |
The interval in milliseconds between two split reads in a reader.
|
| map.size | int | no | 5 |
The size of `map` type that connector generated
|
| array.size | int | no | 5 |
The size of `array` type that connector generated
|
| bytes.length | int | no | 5 |
The length of `bytes` type that connector generated
|
@@ -50,7 +49,7 @@ just for some test cases such as type conversion or connector
new feature testin
| smallint.min | smallint | no | 0 |
The min value of smallint data that connector generated
|
| smallint.max | smallint | no | 32767 |
The max value of smallint data that connector generated
|
| smallint.template | list | no | - |
The template list of smallint type that connector generated, if user configured
it, connector will randomly select an item from the template list
|
-| int.fake.template | string | no | range |
The fake mode of generating int data, support `range` and `template`, default
`range`,if use configured it to `template`, user should also configured
`int.template` option |
+| int.fake.mode | string | no | range |
The fake mode of generating int data, support `range` and `template`, default
`range`. If set to `template`, configure `int.template` too. |
| int.min | int | no | 0 |
The min value of int data that connector generated
|
| int.max | int | no | 0x7fffffff |
The max value of int data that connector generated
|
| int.template | list | no | - |
The template list of int type that connector generated, if user configured it,
connector will randomly select an item from the template list
|
@@ -264,7 +263,7 @@ FakeSource {
string.template = ["tyrantlucifer", "hailin", "kris", "fanjia", "zongwen",
"gaojun"]
tinyint.fake.mode = "template"
tinyint.template = [1, 2, 3, 4, 5, 6, 7, 8, 9]
- smalling.fake.mode = "template"
+ smallint.fake.mode = "template"
smallint.template = [10, 11, 12, 13, 14, 15, 16, 17, 18, 19]
int.fake.mode = "template"
int.template = [20, 21, 22, 23, 24, 25, 26, 27, 28, 29]
diff --git a/docs/zh/connectors/sink/Fluss.md b/docs/zh/connectors/sink/Fluss.md
index 73914f98d4..7834df761b 100644
--- a/docs/zh/connectors/sink/Fluss.md
+++ b/docs/zh/connectors/sink/Fluss.md
@@ -2,9 +2,9 @@ import ChangeLog from '../changelog/connector-fluss.md';
# Fluss
-> Fluss 数据接收器
+> Fluss Sink 连接器
-## 引擎支持
+## 支持引擎
> Spark<br/>
> Flink<br/>
@@ -12,77 +12,108 @@ import ChangeLog from '../changelog/connector-fluss.md';
## 主要特性
-- [ ] [精准一次](../../introduction/concepts/connector-v2-features.md)
-- [x] [cdc](../../introduction/concepts/connector-v2-features.md)
+- [ ] [精确一次](../../introduction/concepts/connector-v2-features.md)
+- [x] [支持 CDC](../../introduction/concepts/connector-v2-features.md)
- [x] [支持多表写入](../../introduction/concepts/connector-v2-features.md)
-- [ ] [timer flush](../../introduction/concepts/connector-v2-features.md)
+- [ ] [定时刷新](../../introduction/concepts/connector-v2-features.md)
## 描述
-该接收器用于将数据写入到Fluss中。支持批和流两种模式。
+Fluss Sink 用于在批处理或流处理作业中,将 SeaTunnel 数据写入已有的 Fluss 表。
+
+如果目标 Fluss 表有主键,连接器会使用 upsert 写入方式:`INSERT` 和 `UPDATE_AFTER` 会写入或更新数据,`DELETE`
会删除数据,`UPDATE_BEFORE` 会被忽略。如果目标表没有主键,连接器会使用 append 写入方式:`INSERT` 和
`UPDATE_AFTER` 会追加数据,`DELETE` 和 `UPDATE_BEFORE` 会被忽略。
+
+运行作业前,目标 Fluss database 和 table 必须已经存在。当前 Sink 不会自动创建 Fluss database 或 table。
## 依赖
- <dependency>
- <groupId>com.alibaba.fluss</groupId>
- <artifactId>fluss-client</artifactId>
- <version>0.7.0</version>
- </dependency>
+```xml
+<dependency>
+ <groupId>com.alibaba.fluss</groupId>
+ <artifactId>fluss-client</artifactId>
+ <version>0.7.0</version>
+</dependency>
+```
+
+## Sink 选项
+
+| 名称 | 类型 | 必填 | 默认值 | 描述 |
+|---|---|---|---|---|
+| bootstrap.servers | string | 是 | - | Fluss coordinator 地址,例如
`fluss-coordinator:9123`。 |
+| database | string | 否 | 上游数据库名 | 目标 Fluss database。支持
`${database_name}`、`${schema_name}` 等占位符。 |
+| table | string | 否 | 上游表名 | 目标 Fluss table。支持
`${table_name}`、`${schema_name}` 等占位符。 |
+| client.config | map | 否 | - | 传递给 Fluss 连接的额外客户端参数。 |
+| multi_table_sink_replica | int | 否 | 1 | 多表写入模式下的 Sink writer 副本数。 |
+| common-options | - | 否 | - | Sink 通用参数,详见 [Sink Common
Options](../common-options/sink-common-options.md)。 |
-## 接收器选项
+### database
-| 名称 | 类型 | 是否必须 | 默认值 | 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` 时,Sink 会使用输入表标识中的上游数据库名。
+可以配置固定 database 名称:
-### database [string]
+```hocon
+database = "target_db"
+```
-database选项参数可以填入一任意库名,这个名字最终会被用作目标表的库名,并且支持变量(`${database_name}`,`${schema_name}`)。
-替换规则如下:`${schema_name}` 将替换传递给目标端的 SCHEMA 名称,`${database_name}` 将替换传递给目标端的库名。
+也可以使用占位符:
-例如:
-1. test_${schema_name}_test
-2. sink_sinkdb
-3. ss_${database_name}
+```hocon
+database = "fluss_${database_name}"
+database = "fluss_${schema_name}"
+```
+### table
-### table [string]
+未配置 `table` 时,Sink 会使用输入表标识中的上游表名。
-table选项参数可以填入一任意表名,这个名字最终会被用作目标表的表名,并且支持变量(`${table_name}`,`${schema_name}`)。
-替换规则如下:`${schema_name}` 将替换传递给目标端的 SCHEMA 名称,`${table_name}` 将替换传递给目标端的表名。
+可以配置固定 table 名称:
-例如:
-1. test_${schema_name}_test
-2. sink_sinktable
-3. ss_${table_name}
+```hocon
+table = "target_table"
+```
-## 数据类型映射
+也可以使用占位符:
-| 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
+table = "fluss_${table_name}"
+table = "fluss_${schema_name}_${table_name}"
+```
+
+### client.config
+
+使用 `client.config` 传递额外 Fluss 客户端配置。
+
+```hocon
+client.config = {
+ request.timeout = "30s"
+}
+```
+
+支持的配置键以 Fluss 客户端文档为准。
+## 数据类型映射
+
+| SeaTunnel 数据类型 | Fluss 数据类型 |
+|---|---|
+| BOOLEAN | BOOLEAN |
+| TINYINT | TINYINT |
+| SMALLINT | SMALLINT |
+| INT | INT |
+| BIGINT | BIGINT |
+| FLOAT | FLOAT |
+| DOUBLE | DOUBLE |
+| DECIMAL | DECIMAL |
+| BYTES | BYTES |
+| STRING | STRING |
+| DATE | DATE |
+| TIME | TIME |
+| TIMESTAMP | TIMESTAMP |
+| TIMESTAMP_TZ | TIMESTAMP_LTZ |
## 任务示例
-### 简单示例
+### 单表写入
```hocon
env {
@@ -91,77 +122,35 @@ env {
}
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"]
+ row.num = 3
+ schema {
+ table = "test.table1"
+ fields {
+ id = int
+ name = string
+ score = double
}
- {
- 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 {
+ rows = [
+ { kind = INSERT, fields = [1, "Alice", 98.5] }
+ { kind = INSERT, fields = [2, "Bob", 88.0] }
+ { kind = UPDATE_AFTER, fields = [2, "Bob", 90.0] }
+ ]
+ }
}
sink {
Fluss {
- bootstrap.servers="fluss_coordinator_e2e:9123"
- database = "fluss_db_${database_name}"
- table = "fluss_tb_${table_name}"
+ bootstrap.servers = "fluss-coordinator:9123"
+ database = "fluss_${database_name}"
+ table = "fluss_${table_name}"
}
}
```
+
+在这个示例中,上游表 `test.table1` 会写入 Fluss 表 `fluss_test.fluss_table1`。
+
### 多表写入
```hocon
@@ -171,182 +160,44 @@ env {
}
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 = 2
+ schema {
+ table = "test.table1"
+ fields {
+ id = int
+ name = string
+ }
+ }
+ },
+ {
+ row.num = 2
+ schema {
+ table = "test.table2"
+ fields {
+ id = int
+ name = string
+ }
+ }
}
]
- },
- {
- 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}"
+ bootstrap.servers = "fluss-coordinator:9123"
+ database = "fluss_${database_name}"
+ table = "fluss_${table_name}"
+ multi_table_sink_replica = 1
}
}
```
-## 变更日志
+多表写入时,Sink 会为每个上游表分别解析目标表名。运行作业前,需要先创建对应的 Fluss database 和 table。
+
+## Changelog
<ChangeLog />
diff --git a/docs/zh/connectors/source/EdgeSocket.md
b/docs/zh/connectors/source/EdgeSocket.md
index 05ce6ebeb4..69a61b0d4a 100644
--- a/docs/zh/connectors/source/EdgeSocket.md
+++ b/docs/zh/connectors/source/EdgeSocket.md
@@ -10,12 +10,12 @@ import ChangeLog from
'../changelog/connector-edge-socket.md';
## 主要特性
-- [ ] [batch](../../introduction/concepts/connector-v2-features.md)
-- [x] [stream](../../introduction/concepts/connector-v2-features.md)
-- [ ] [exactly-once](../../introduction/concepts/connector-v2-features.md)
-- [ ] [column projection](../../introduction/concepts/connector-v2-features.md)
-- [ ] [parallelism](../../introduction/concepts/connector-v2-features.md)
-- [ ] [support user-defined
split](../../introduction/concepts/connector-v2-features.md)
+- [ ] [批处理](../../introduction/concepts/connector-v2-features.md)
+- [x] [流处理](../../introduction/concepts/connector-v2-features.md)
+- [ ] [精确一次](../../introduction/concepts/connector-v2-features.md)
+- [ ] [列投影](../../introduction/concepts/connector-v2-features.md)
+- [ ] [并行度](../../introduction/concepts/connector-v2-features.md)
+- [ ] [支持用户自定义分片](../../introduction/concepts/connector-v2-features.md)
## 描述
diff --git a/docs/zh/connectors/source/FakeSource.md
b/docs/zh/connectors/source/FakeSource.md
index fc515b6585..770c0eb0a0 100644
--- a/docs/zh/connectors/source/FakeSource.md
+++ b/docs/zh/connectors/source/FakeSource.md
@@ -27,13 +27,14 @@ FakeSource 是一个虚拟数据源,它根据用户定义的 schema 数据结
| 名称 | 类型 | 必填 | 默认值 | 描述
|
|---------------------------|---------|------|---------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
-| tables_configs | list | 否 | - | 定义多个
FakeSource,每个项可以包含完整的 FakeSource 配置描述
|
-| schema | config | 是 | - | 定义
Schema 信息。更多详情请参考 [Schema 特性](../../introduction/concepts/schema-feature.md)。
|
+| tables_configs | list | 否 | - | 定义多个
FakeSource 表,每个项都可以包含单个 FakeSource 支持的完整配置,例如独立的 schema 和 rows。`tables_configs`
与顶层 `schema` 二选一配置。 |
+| schema | config | 条件必填 | - | 定义
Schema 信息。未配置 `tables_configs` 时必填。更多详情请参考 [Schema
特性](../../introduction/concepts/schema-feature.md)。 |
| auto.increment.enabled | boolean | 否 | false |
启用自动递增ID
|
-| auto.increment.start | int | 否 | |
自动递增ID的起始值
|
+| auto.increment.start | long | 否 | 1 | 自动递增
ID 的起始值,仅在 `auto.increment.enabled` 为 `true` 时生效。 |
+| rows | config | 否 | - |
自定义输出行列表,每个并行度都会输出这组数据。详情见下文 `rows` 示例。 |
| row.num | int | 否 | 5 |
每个并行度生成的数据总行数
|
| split.num | int | 否 | 1 |
枚举器为每个并行度生成的分片数量
|
-| split.read-interval | long | 否 | 1 |
读取器在两个分片读取之间的间隔时间(毫秒)
|
+| split.read-interval | int | 否 | 1 |
读取器在两个分片读取之间的间隔时间(毫秒)。 |
| map.size | int | 否 | 5 | 连接器生成的
`map` 类型的大小
|
| array.size | int | 否 | 5 | 连接器生成的
`array` 类型的大小
|
| bytes.length | int | 否 | 5 | 连接器生成的
`bytes` 类型的长度
|
@@ -48,9 +49,9 @@ FakeSource 是一个虚拟数据源,它根据用户定义的 schema 数据结
| smallint.min | smallint | 否 | 0 | 连接器生成的
smallint 数据的最小值
|
| smallint.max | smallint | 否 | 32767 | 连接器生成的
smallint 数据的最大值
|
| smallint.template | list | 否 | - | 连接器生成的
smallint 类型的模板列表,如果用户配置了此选项,连接器将从模板列表中随机选择一个项
|
-| int.fake.template | string | 否 | range | 生成 int
数据的伪数据模式,支持 `range` 和 `template`,默认为 `range`,如果配置为 `template`,用户还需配置
`int.template` 选项
|
-| int.min | smallint | 否 | 0 | 连接器生成的
int 数据的最小值
|
-| int.max | smallint | 否 | 0x7fffffff | 连接器生成的
int 数据的最大值
|
+| int.fake.mode | string | 否 | range | 生成 int
数据的模式,支持 `range` 和 `template`,默认为 `range`。如果配置为 `template`,还需要配置
`int.template`。 |
+| int.min | int | 否 | 0 | 连接器生成的
int 数据的最小值 |
+| int.max | int | 否 | 0x7fffffff | 连接器生成的
int 数据的最大值 |
| int.template | list | 否 | - | 连接器生成的
int 类型的模板列表,如果用户配置了此选项,连接器将从模板列表中随机选择一个项
|
| bigint.fake.mode | string | 否 | range | 生成
bigint 数据的伪数据模式,支持 `range` 和 `template`,默认为 `range`,如果配置为 `template`,用户还需配置
`bigint.template` 选项
|
| bigint.min | bigint | 否 | 0 | 连接器生成的
bigint 数据的最小值
|
@@ -262,7 +263,7 @@ FakeSource {
string.template = ["tyrantlucifer", "hailin", "kris", "fanjia", "zongwen",
"gaojun"]
tinyint.fake.mode = "template"
tinyint.template = [1, 2, 3, 4, 5, 6, 7, 8, 9]
- smalling.fake.mode = "template"
+ smallint.fake.mode = "template"
smallint.template = [10, 11, 12, 13, 14, 15, 16, 17, 18, 19]
int.fake.mode = "template"
int.template = [20, 21, 22, 23, 24, 25, 26, 27, 28, 29]
@@ -550,4 +551,4 @@ source {
## 变更日志
-<ChangeLog />
\ No newline at end of file
+<ChangeLog />