首页 > 解决方案 > Debezium:Mysql LONGTEXT 到 Debezium 数据类型转换不正确

问题描述

mysql 架构

 `Info` longtext,

同一字段的 debezium 模式

{
     "name": "Info",
      "type": [
          "null",
          "string"
       ],
      "default": null
},

当在 Redshift 中加载此数据时,它会失败,因为它预计数据类型会很大,但由于 debezium 没有将 longtext 转换为 long,VARCHAR(MAX)所以它正在变得越来越大。VARCHAR(255)

请建议,为什么会这样。

标签: debezium

解决方案


请看一下https://debezium.io/documentation/reference/1.2/connectors/mysql.html#mysql-property-column-propagate-source-type

这会将类型约束参数添加到模式中。

此外,IIUC 您正在使用 Confluent Avro 转换器。如果是,则将enhanced.avro.schema.support和设置connect.meta.datatrue

在这种情况下,如果提供了此类功能,您将需要将 Debezium onstraint 参数转换为接收器转换器支持的参数。


推荐阅读