【问题标题】:Apache NiFi: InferAvroSchema infers signed values as stringApache NiFi:InferAvroSchema 将带符号的值推断为字符串
【发布时间】:2017-02-27 05:53:48
【问题描述】:

我在 NiFi 中设置了一个管道,我在其中获取 JSON 记录,然后我使用这些记录向 API 发出请求。我得到的响应将包含数字和文本数据。然后我必须将此数据写入 Hive。我使用InferAvroSchema 来推断模式。一些数值是带符号的值,例如 -2.46,-0.1 在推断类型时,处理器将它们视为 string 而不是 doublefloatdecimal 类型。

我知道我们可以在处理器中硬编码我们的 AVRO 模式,但我认为通过使用 InferAvroSchema 使其更加动态会更好。有没有其他方法可以克服/解决这个问题?

【问题讨论】:

    标签: hive avro apache-nifi kite-sdk


    【解决方案1】:

    InferAvroSchema 非常适合猜测初始架构,但是一旦您需要更具体的内容,最好删除 InferAvroSchema 并提供您需要的确切架构。

    【讨论】:

    • 好的。但是,它可以做到,对吧?他们正在使用 Kite SDK。它只是扫描字段值的更少代码行,如果值是有符号的,并且是数字的,则可以推断为双精度/十进制,否则如果它有字母,则将其推断为字符串。还是比这复杂得多?
    猜你喜欢
    • 1970-01-01
    • 2017-08-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-30
    • 1970-01-01
    相关资源
    最近更新 更多