- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
在 NiFi 流中,我想读取 JSON 结构,将其拆分,使用有效负载执行 SQL 查询,最后将每个结果输出到 JSON 文件中。
但是,我在检索 ExecuteSQL
中拆分的 FlowFile 的属性值时遇到问题。处理器。
GenerateFlowFile
处理器,JSON 结构为 Custom Text
SplitJSON
,以数据为要拆分的属性ExecuteSQL
,对于我尝试执行的查询,使用 SplitJSON's
有效载荷属性 ${id}
ExecuteQuery
处理器未解析其
SQL select query
上的表达式属性(property)。
最佳答案
您需要一个额外的 EvaluateJsonPath
(或 ExtractText
)处理器在 SplitJson
之间和 ExecuteSQL
-- 表达式语言表达式无法评估参数替换的流文件内容,因此您的 SQL 表达式最终为 SELECT * FROM foo WHERE id = ;
这就是您有语法错误的原因。
表达式语言从流文件属性中读取,因此您需要将 JSON 内容解析为可访问的属性。 EvaluateJsonPath
处理器正是这样做的。您需要做的就是添加一个自定义属性(单击属性对话框右上角的 +
)并提取 id
JSON 中的值转换为流文件属性。然后连接matched
此处理器与 ExecuteSQL
的关系处理器。
关于apache-nifi - NiFi SplitJSON 和 ExecuteSQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45172345/
使用 ConvertRecord 处理器,我将一个 csv 文本文件转换为一个 json 文件,如下所示: [ {"A":1001,"B":"20170101","C":0.3}, {"A
在 NiFi 流中,我想读取 JSON 结构,将其拆分,使用有效负载执行 SQL 查询,最后将每个结果输出到 JSON 文件中。 但是,我在检索 ExecuteSQL 中拆分的 FlowFile 的属
我是一名优秀的程序员,十分优秀!