Kafka Connect cassandra source-十进制数据类型错误

时间:2018-11-20 09:54:07

标签: apache-spark cassandra apache-kafka apache-kafka-connect spark-structured-streaming

我正在使用kafka connect cassandra源连接器1.0版本。我在cassandra表中有一个十进制数据类型列(价格),并将其作为json从源连接器写入到kafka主题,它以某种字符串格式(如"price":"AA==")写入十进制值。 现在它在我的火花流中出错,同时转换为“数字格式异常”浮动。...??请提出在kafka主题中编写值时可能出了什么问题。 预先感谢。

2 个答案:

答案 0 :(得分:0)

它看起来像是Kafka Connect + Decimals中的known bug。正如本期中所建议的那样,您需要将数据从base64编码的字符串执行“手动”转换为BigDecimal

BigDecimal bigDecimal = new BigDecimal(
    new  BigInteger(Base64.getDecoder().decode("BfXhAA==")), scale); 

答案 1 :(得分:0)

在带有to_char(fieldname)的连接器文件环绕字段中