JsonPathReader

描述

解析 JSON 记录,并针对每个 JSON 对象评估用户定义的 JSON 路径。虽然读取器期望每条记录都是格式良好的 JSON,但 FlowFile 的内容可能由许多记录组成,每条记录可以是格式良好的 JSON 数组或 JSON 对象,记录之间允许有空格,例如常见的“每行一个 JSON”格式。如果遇到数组,则该数组中的每个元素将被视为单独的记录。用户定义的属性定义了应从 JSON 中提取的字段,以构建 Record 的字段。任何未通过 JSONPath 提取的 JSON 字段都不会在 JSON 记录中返回。

标签

json、jsonpath、parser、reader、record

属性

下表列出了各项属性,其中带星号 (*) 的为必需属性。其他属性视为可选属性。该表还指出了所有默认值以及属性是否支持 NiFi 表达式语言。

显示名称

API 名称

默认值

允许值

描述

允许评论 *

允许评论

false

  • true

  • false

解析 JSON 文档时是否允许评论

日期格式

日期格式

指定读取/写入“Date”字段时使用的格式。如果未指定,则将假定“Date”字段为自纪元(1970 年 1 月 1 日午夜 GMT)以来的毫秒数。如果指定,则该值必须与 Java java.time.format.DateTimeFormatter 格式相匹配(例如,MM/dd/yyyy 表示两位数的月份,然后是两位数的日期、四位数的年份,全部由“/”字符分隔,如 01/01/2017)。

最大字符串长度 *

最大字符串长度

20 MB

解析 JSON 文档时字符串值的最大允许长度

时间格式

时间格式

指定读取/写入“Time”字段时使用的格式。如果未指定,则将假定“Time”字段为自纪元(1970 年 1 月 1 日午夜 GMT)以来的毫秒数。如果指定,则该值必须与 Java java.time.format.DateTimeFormatter 格式相匹配(例如,HH:mm:ss 表示 24 小时格式的两位小时数、两位分钟数和两位秒数,全部由“:”字符分隔,如 18:04:15)。

时间戳格式

时间戳格式

指定读取/写入“Timestamp”字段时使用的格式。如果未指定,则将假定“Timestamp”字段为自纪元(1970 年 1 月 1 日午夜 GMT)以来的毫秒数。如果指定,则该值必须与 Java java.time.format.DateTimeFormatter 格式相匹配(例如,MM/dd/yyyy HH:mm:ss 表示两位数的月份,然后是两位数的日期、四位数的年份,全部由“/”字符分隔;然后依次是 24 小时格式的两位小时数、两位分钟数和两位秒数,全部由“:”字符分隔,如 01/01/2017 18:04:15)。

架构访问策略 *

schema-access-strategy

infer-schema

  • 使用“架构名称”属性

  • 使用“架构文本”属性

  • 架构参考读取器

  • 推断架构

指定如何获取用于解读数据的架构。

架构分支

schema-branch

指定在“架构注册表”属性中查找架构时使用的分支名称。如果所选架构注册表不支持分支,则该值将被忽略。

架构名称

schema-name

${schema.name}

指定要在架构注册表属性中查找的架构的名称。

架构参考读取器 *

schema-reference-reader

服务实现,负责读取 FlowFile 属性或内容以确定架构参考标识符

架构注册表

schema-registry

指定用于架构注册表的控制器服务

架构文本

schema-text

${avro.schema}

Avro 格式架构的文本

架构版本

schema-version

指定要在架构注册表中查找的架构版本。如果未指定,则将检索架构的最新版本。

状态管理

此组件不存储状态。

受限

此组件不受限制。

系统资源注意事项

此组件未指定系统资源注意事项。

语言: 中文