Skip to main content
Version: 4.1.0

StarRocks

数据源配置

  • 配置项说明:
  1. 实例ID

    • 类型: 单行文本
    • 必须:
    • 默认值:
    • 说明: 数据源实例名称,请起一个有意义且唯一的名称
  2. host

    • 类型: 单行文本
    • 必须:
    • 默认值:
    • 说明: 目标数据库的 JDBC 连接信息,用于执行preSql及postSql
  3. 端口

    • 类型: 整型数字
    • 必须:
    • 默认值: 9030
    • 说明:
  4. 数据库名

    • 类型: 单行文本
    • 必须:
    • 默认值:
    • 说明: Doris表的数据库名称
  5. 用户名

    • 类型: 单行文本
    • 必须:
    • 默认值: root
    • 说明: Doris数据库的用户名
  6. 密码

    • 类型: 密码
    • 必须:
    • 默认值:
    • 说明: StarRocks数据库的密码
  7. loadUrl

    • 类型: 富文本

    • 必须:

    • 默认值: []

    • 说明:

      Doris FE的地址用于Streamload,可以为多个fe地址,fe_ip:fe_http_port 样例:

      ["172.28.17.100:8030", "172.28.17.100:8030"]

批量写

  • 配置项说明:
  1. 数据库名

    • 类型: 单选
    • 必须:
    • 默认值:
    • 说明:
  2. preSql

    • 类型: 富文本

    • 必须:

    • 默认值:

    • 说明:

      描述:写入数据到目的表前,会先执行这里的标准语句。如果 Sql 中有你需要操作到的表名称,请使用 @table 表示,这样在实际执行 Sql 语句时,会对变量按照实际表名称进行替换。比如你的任务是要写入到目的端的100个同构分表(表名称为:datax_00,datax01, ... datax_98,datax_99),并且你希望导入数据前,先对表中数据进行删除操作,那么你可以这样配置:"preSql":["delete from 表名"],效果是:在执行到每个表写入数据前,会先执行对应的 delete from 对应表名称

  3. postSql

    • 类型: 富文本

    • 必须:

    • 默认值:

    • 说明:

      写入数据到目的表后,会执行这里的标准语句。(原理同 preSql )

  4. 自动建表

    • 类型: 单选

    • 必须:

    • 默认值: on

    • 说明:

      解析Reader的元数据,自动生成Writer create table DDL语句,有三种选择:

      • off:关闭自动生成及同步目标端建表DDL语句,当目标端表实例已经存在可选择此选项。
      • default:打开动生成及自动执行目标端建表DDL语句,执行任务状态由程序自动控制毋需人为干涉。
      • customized:用户可自定义设置自动执行目标端建表DDL语句逻辑,如:是否需要生成列注释等。
  5. loadProps

    • 类型: 富文本

    • 必须:

    • 默认值: com.qlangtech.tis.plugin.datax.starrocks.DataXStarRocksWriter.getDftLoadProps()

    • 说明:

      StreamLoad 的请求参数,默认传入的数据均会被转为字符串,并以 \t 作为列分隔符,\n 作为行分隔符,组成csv文件进行 StreamLoad导入参数说明。 如需更改列分隔符, 则正确配置 loadProps 即可:

       {
      "column_separator": "\\x01",
      "row_delimiter": "\\x02"
      }
  6. maxBatchRows

    • 类型: 整型数字

    • 必须:

    • 默认值: 10000

    • 说明:

      • 描述:单次StreamLoad导入的最大行数
      • 必选:否
      • 默认值:10000 (1W)
  7. maxBatchSize

    • 类型: 整型数字

    • 必须:

    • 默认值: 104857600

    • 说明:

      • 描述:单次StreamLoad导入的最大字节数。
      • 必选:否
      • 默认值:104857600 (100M)
  8. 配置模版

    • 类型: 富文本
    • 必须:
    • 默认值: com.qlangtech.tis.plugin.datax.starrocks.DataXStarRocksWriter.getDftTemplate()
    • 说明: 无特殊情况请不要修改模版内容,避免不必要的错误

实时写

  • 配置项说明:
  1. semantic

    • 类型: 单选

    • 必须:

    • 默认值: at-least-once

    • 说明:

      描述: sink 端是否支持二阶段提交

      注意: 如果此参数为空,默认不开启二阶段提交,即 sink 端不支持 exactly_once 语义; 当前只支持 exactly-once 和 at-least-once

  2. 脚本类型

    • 类型: 单行文本

    • 必须:

    • 默认值: StreamAPI

    • 说明:

      TIS 为您自动生成 Flink Stream 脚本,现支持两种类型脚本:

      • SQL: 优点逻辑清晰,便于用户自行修改执行逻辑
      • Stream API优点基于系统更底层执行逻辑执行、轻量、高性能
  3. batchSize

    • 类型: 整型数字

    • 必须:

    • 默认值: 5000

    • 说明:

      描述:一次性批量提交的记录数大小,该值可以极大减少 ChunJun 与数据库的网络交互次数,并提升整体吞吐量。但是该值设置过大可能会造成 ChunJun 运行进程 OOM 情况

  4. flushIntervalMills

    • 类型: 整型数字
    • 必须:
    • 默认值: 10000
    • 说明: "the flush interval mills, over this time, asynchronous threads will flush data. The default value is 10s.
  5. parallelism

    • 类型: 整型数字
    • 必须:
    • 默认值: 1
    • 说明: sink 并行度