创建数据同步任务

最近更新时间:2019-07-23 16:45:14

1. 接口描述

接口请求域名:ckafka.api.qcloud.com
本接口(AddConnector)用于创建数据同步任务。

2. 输入参数

以下请求参数列表仅列出了接口请求参数,其它参数见 公共请求参数 页面。

参数名称 必选 类型 描述
zoneId String 可用区 ID。
description String connector 描述。
connectorClass String 执行该任务的 class 名称,不同种类的同步 connector 有不同的名称,当前消息队列 Ckafka 不同实例之间的同步为 com.tencent.ckafka.replicator.K2KSourceConnector。当前仅支持 com.tencent.ckafka.replicator.K2KSourceConnector
config JSON String 具体实例参见下节 配置说明
name String connector 名称。

3. 配置说明

3.1 基础配置

配置项 必选 类型 配置说明
src.broker String 源 Kafka broker 地址。
dest.broker String 目标 Kafka broker 地址。
src.instance String 源实例名称。
dest.instance String 目标实例名称。
connector.class String 目前仅支持 com.tencent.ckafka.replicator.K2KSourceConnector 任务。
tasks.max String 同步的线程数量。
quota.value String connector 流控阈值。
quota.unit String BANDWIDTH 流控单位:流量/mbps;RECORD:记录数/条。
quota.strategy String org.apache.kafka.connect.storage.SimpleStrategy 流控策略 SimpleStrategy,平均分配流控给各个 Task 。

基础配置说明

  • 业务 connector 不能写基础配置的配置项,只能从中读取。
  • dest.instance 和 dest.broker 中,优先使用 dest.broker 配置;src.instance 和 src.broker 同理。
  • 流控相关参数参数根据 connector 的类型进行不同方向的流控:sourceconnector 控制从源 Kafka 集群拉取消息的速率;sinkconnector 控制将数据导入目的 Kafka 集群的速率。

3.2 业务配置

配置项 必选 类型 默认值 配置说明
auto.create String false 是否在目标集群创建 topic,如果设置为 false,topic 不存在会停止任务。
keep.partition String false 源/目的端集群的 topic 的 partition 数是否必须保持一致,如果设置为 true,不一致时会停止任务。
topic.regex String N/A 用正则表达式匹配 topic。
topic.regex.{key} String N/A 匹配 topic 的正则表达式。
topic.regex.{key}. dest.prefix String N/A 目的端集群创建 topic 时,在源 topic 名称的基础上加上前缀。
topic.regex.{key}. dest.suffix String N/A 目的端集群创建 topic 时,在源 topic 名称的基础上加上后缀。
topic.regex.{key}.blacklist String false 是否为黑名单配置。
topic.regex.{key}.offset.reset String earliest -
topic.regex.{key}.offset.offset String N/A -
topic.regex.{key}.offset.timestamp String N/A -
topic.config String N/A 单个 topic 复制配置。
topic.config.{key} String N/A topic 名称。
topic.config.{key}.dest.topic String N/A 目的端 topic 名称,默认与源端保持一致。

业务配置说明

  • connector 开始工作的 offset 设置,默认从 earliest 开始,同时配置多个时,优先级从高到低为:timestamp > offset > reset。
  • 配置优先级:黑名单 topic > 单个 topic > 正则 topic > 全局 topic。

优先级示例说明

  • 如果 topicA 在 topic.config 中配置了,同时也符合正则表达式配置topic.*,则 topicA 以 topic.config 的配置为准。
  • 如果 topicA 配置了 auto.create=true,全局配置了 auto.create=false,则 auto.create=true。
  • topicA 符合正则表达式规定的黑名单,即使在 topic.config 中配置了,也不会生效。

业务配置示例

{
    "connector.class":"com.tencent.ckafka.replicator.K2KSourceConnector",  // 当前只支持这种类型数据同步方式
    "src.instance":"ckafka-9comx6cs",  //  源实例
    "dest.instance":"ckafka-jizhaw80",  // 目的实例
    "topic.config":{  // topic 同步配置
        "date":{  // 源 topic 名称
            "dest.topic":"date"   // 目的 topic 名称
        }
    }
}

4. 示例

输入:

 https://domain/v2/index.php?Action=AddConnector&description=test&name=test&zoneId=200004&connectorClass=com.tencent.ckafka.replicator.K2KSourceConnector&config=xxx&<公共请求参数>

输出:

{
    "code": 0,
    "codeDesc": "Success",
    "message": "ok"
}