【问题标题】:What are the extra topics created when creating and debezium source connector创建和 debezium 源连接器时创建的额外主题是什么
【发布时间】:2022-01-06 07:32:04
【问题描述】:

Q1) 以下是我在为 MySQL 源创建 kafka 连接器时使用的配置。

{
  "connector.class": "io.debezium.connector.mysql.MySqlConnector",
  "snapshot.locking.mode": "minimal",
  "database.user": "cdc_user",
  "tasks.max": "3",
  "database.history.kafka.bootstrap.servers": "10.49.115.X:9092,10.48.X.211:9092,10.X.178.121:9092,10.53.4.X:9092",
  "database.history.kafka.topic": "history.cdc.fkw.supply.mp.seller_platform",
  "database.server.name": "cdc.fkw.supply.mp",
  "heartbeat.interval.ms": "5000",
  "database.port": "3306",
  "table.whitelist": "seller_platform.Contacts, seller_platform.EmailVerificationConfigs, seller_platform.financial_account_tag, seller_platform.HolidayConfigs, seller_platform.Preferences, seller_platform.Sellers",
  "database.hostname": "something.cloud.in",
  "database.password": "ABCDE",
  "database.history.kafka.recovery.poll.interval.ms": "5000",
  "name": "cdc.fkw.supply.mp.seller_platform.connector",
  "database.history.skip.unparseable.ddl": "true",
  "errors.tolerance": "all",
  "database.whitelist": "seller_platform",
  "snapshot.mode": "when_needed"
}


curl -s --location --request GET "http://10.24.18.167:80/connectors/cdc.fkw.supply.mp.seller_platform.connector/topics" | jq '.'
{
  "cdc.fkw.supply.mp.seller_platform.connector": {
    "topics": [
      "cdc.fkw.supply.mp.seller_platform.Sellers",
      "cdc.fkw.supply.mp",
      "cdc.fkw.supply.mp.seller_platform.HolidayConfigs",
      "cdc.fkw.supply.mp.seller_platform.EmailVerificationConfigs",
      "cdc.fkw.supply.mp.seller_platform.Contacts",
      "cdc.fkw.supply.mp.seller_platform.Preferences",
      "__debezium-heartbeat.cdc.fkw.supply.mp",
      "cdc.fkw.supply.mp.seller_platform.financial_account_tag"
    ]
  }
}

为什么创建 cdc.fkw.supply.mp 和 __debezium-heartbeat.cdc.fkw.supply.mp 主题?

我在这 2 个主题中看到了一些垃圾数据。

第二季度)

有没有其他api可以知道worker服务器上的kafka连接转换器配置? 如果没有API,那么我们存储所有worker属性的配置文件的路径是什么?

这是工人属性的链接: https://docs.confluent.io/platform/current/connect/references/allconfigs.html

curl -s --location --request GET "http://10.24.18.167:80"         
                                                            
{"version":"6.1.1-ccs","commit":"c209f70c6c2e52ae","kafka_cluster_id":"snBlf-kfTdCYWEO9IIEXTA"}%

【问题讨论】:

  • 心跳主题的描述应该记录在某处,但两者似乎都与您的database.server.name 配置有关。你指的是什么垃圾数据?
  • 不,工作属性在 REST 上不可用。不过,您可以在日志中找到转换器属性,当然,您也可以覆盖并设置自己的
  • 我得到了答案,实际上 debezium 连接器存储了它想要向其发送心跳的 kafka 主题。另一个主题是存储架构更改。
  • 现在我遇到了一个新问题。连接器正在运行,我正在尝试删除模式注册表中的模式``` curl -s --location --request DELETE '10.24.17.179/subjects/…' {"error_code":500,"message":"删除主题时出错cdc.fkw.supply.spf.spf.claim-key"}```当我尝试curl -s --location --request DELETE 'http://10.24.17.179/subjects/cdc.fkw.supply.mp.miami.working_hour-key/versions/1' {"error_code":50004,"message":"Master not known."}
  • 除非表架构因不兼容而发生更改,否则无需从注册表中删除数据

标签: apache-kafka apache-kafka-connect debezium


【解决方案1】:

A1)

心跳主题存储连接器正在使用的所有kafka主题的详细信息,以便连接器可以向它发送心跳。

创建名为 topic 的 database.server.name 值以存储数据库中发生的任何架构更改。

https://debezium.io/documentation/reference/1.7/connectors/mysql.html#mysql-schema-change-topic

【讨论】:

    猜你喜欢
    • 2021-10-01
    • 2019-01-19
    • 2019-11-04
    • 2019-09-06
    • 2021-10-27
    • 2022-10-14
    • 2012-09-16
    • 1970-01-01
    • 2020-07-10
    相关资源
    最近更新 更多