Kafka - Elastic Sink - 小数/日期值的 AVRO 架构数据转换问题

问题描述 投票:0回答:1

我们看到一个问题,即弹性端上的小数和日期数据未正确填充...以下是整个上下文,任何人都可以输入,我们将不胜感激。谢谢

对于类:“io.confluence.connect.elasticsearch.ElasticsearchSinkConnector”使用以下配置

value.converter:“io.confluence.connect.avro.AvroConverter”

数据从流的输出正确到达如下

“销售收入”:144800000

但是当查看该主题的消息时,显示如下

"salesRevenue": {
  "type": "Buffer",
  "data": [
    1,
    144,
    119,
    253,
    48,
    0
  ]
}

注册表中该字段的架构如下

{
      "default": null,
      "name": "salesRevenue",
      "type": [
        "null",
        {
          "connect.name": "org.apache.kafka.connect.data.Decimal",
          "connect.parameters": {
            "connect.decimal.precision": "19",
            "scale": "4"
          },
          "connect.version": 1,
          "logicalType": "decimal",
          "precision": 19,
          "scale": 4,
          "type": "bytes"
        }
      ]
    }

输出到ES的数据是这样的

销售收入”:“AJiwXlCA”

elasticsearch apache-kafka apache-kafka-connect
1个回答
0
投票

我们已经能够通过在输出到弹性接收器连接器消耗的最终主题之前在 ksql 端显式地将 DECIMAL 转换为 > DOUBLE 值来解决此问题

© www.soinside.com 2019 - 2024. All rights reserved.