Kafka Connect 将 JSON 字符串转换为实际 JSON

Eva*_*kas 6 json apache-kafka-connect

我试图弄清楚是否可以使用 Kafka Connect 将存储为字符串的 JSON 值转换为实际的 JSON 结构。

我尝试寻找这样的转变,但没有找到。例如,这可能是来源:

{
  "UserID":2105058535,
  "DocumentID":2105058535,
  "RandomJSON":"{\"Tags\":[{\"TagID\":1,\"TagName\":\"Java\"},{\"TagID\":2,\"TagName\":\"Kafka\"}]}"
}
Run Code Online (Sandbox Code Playgroud)

这就是我的目标:

{
  "UserID":2105058535,
  "DocumentID":2105058535,
  "RandomJSON":{
    "Tags":[
      {
        "TagID":1,
        "TagName":"Java"
      },
      {
        "TagID":2,
        "TagName":"Kafka"
      }
    ]
  }
}
Run Code Online (Sandbox Code Playgroud)

我正在尝试对 Elasticsearch 接收器连接器进行这些转换(如果有影响的话)。

我知道我可以将 Logstash 与 JSON 过滤器一起使用来做到这一点,但我想知道是否有一种方法可以仅使用 Kafka Connect 来做到这一点。

Rob*_*att 5

听起来这将是一个单一消息转换(因此适用于任何连接器,而不仅仅是 ES),但是没有任何开箱即用的东西可以执行您所描述的操作。该 API记录在此处