包含破折号的json无法使用Avro架构

Ope*_*thu 0 apache-nifi

我的输入Json字段名包含破折号.例如:"姓氏":"Doe"

当我将这个json传递给Infer Avro Schema处理器时,它没有告诉我"非法字符:最后的名字"

我还注意到在AvroSchemaRegistry中使用破折号,不编译并最终不允许启用该服务.

我尝试使用"\"转义短划线,但仍然无法正常工作.我在1.4.0版本.

在这方面的任何帮助将不胜感激.

谢谢!

mat*_*tyb 6

破折号不是Avro名称的有效字符(请参阅此处规范).作为NiFi 1.4.0的可能解决方法,您可以使用下划线而不是破折号.如果这不是一个可行的解决方法,那么从NiFi 1.5.0(NIFI-4612)开始,您可以禁用名称验证,这样它就不会抱怨破折号.