Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/apache-kafka/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache kafka JDBC接收器连接器-使用kafka connect从多个主题向上插入多个表-后续_Apache Kafka_Apache Kafka Connect_Confluent Platform - Fatal编程技术网

Apache kafka JDBC接收器连接器-使用kafka connect从多个主题向上插入多个表-后续

Apache kafka JDBC接收器连接器-使用kafka connect从多个主题向上插入多个表-后续,apache-kafka,apache-kafka-connect,confluent-platform,Apache Kafka,Apache Kafka Connect,Confluent Platform,这与下面线程中提到的主题有关 我知道它有点老了。但我的问题也围绕着同一个主题。区别在于我想从主题名中删除后缀,并将剩余的字符串作为表名传递到接收器连接器中。我怎样才能做到这一点 如果它使用SMT,请您帮助实现这一点 主题名称:Source1 Emp,Source1公司 表名:Emp,公司 数据加载需要使用单个接收器连接器从多个主题加载到多个表 你能帮我实现吗 MUS您的假设是正确的,即这可以通过单消息转换(SMT)完成。下面是一个例子: curl -X PUT http://localhost

这与下面线程中提到的主题有关

我知道它有点老了。但我的问题也围绕着同一个主题。区别在于我想从主题名中删除后缀,并将剩余的字符串作为表名传递到接收器连接器中。我怎样才能做到这一点

如果它使用SMT,请您帮助实现这一点

主题名称:Source1 Emp,Source1公司

表名:Emp,公司

数据加载需要使用单个接收器连接器从多个主题加载到多个表

你能帮我实现吗


MUS

您的假设是正确的,即这可以通过单消息转换(SMT)完成。下面是一个例子:

curl -X PUT http://localhost:8083/connectors/sink-postgres-00/config \
    -H "Content-Type: application/json" \
    -d '{
        "connector.class": "io.confluent.connect.jdbc.JdbcSinkConnector",
        "connection.url": "jdbc:postgresql://postgres:5432/",
        "connection.user": "postgres",
        "connection.password": "postgres",
        "tasks.max": "1",
        "topics": "Source1-Emp,Source1-Company",
        "auto.create": "true",
        "auto.evolve":"true",
        "transforms":"dropPrefix",
        "transforms.dropPrefix.type":"org.apache.kafka.connect.transforms.RegexRouter",
        "transforms.dropPrefix.regex":"Source1-(.*)$",
        "transforms.dropPrefix.replacement":"$1"
    }'

欢迎来到StackOverflow!您能否编辑您的问题,以包括源主题名称和要加载到的表名的示例?Robin-我已编辑了上述问题并更新了主题名称和表名感谢Robin的回答。所以这个配置不需要这个key-table.name.format?它会自动从“topics”键获取吗?根据此配置选项的默认值为
${topic}
,因此不需要。谢谢您的帮助!没问题。顺便说一句,StackOverflow礼节是,如果您认为答案是:-)还有一个问题与@Robin有关,我如何确保对Kafka消息中指定的密钥执行upsert操作,而不是明确定义此处的字段。基本上,我正在寻找这些键的选项。“pk.mode”:和“pk.fields”:我不想指定字段,因为这是针对多个表和主题的。