我正在尝试使用GetHBase进程从Hbase提取数据,结果如下
{
"row" : "r5",
"cells" : {
"cf1:ABC:" : "V1",
"cf1:DEF" : "V2",
"cf1:HIJ" : "V3",
"cf1:KLM" : "V4"
}
}
现在,我想为特定列过滤json
预期结果
{"DEF":"V2","KLM":"V4"}
尝试过流
GetHbase-> EvaluationJsonPath
答案 0 :(得分:0)
只需使用JoltTransformJSON,将Jolt Transformation DSL
设置为Shift
,并将Jolt Specification
设置为:
{
"cells": {
"cf1:DEF": "DEF",
"cf1:KLM": "KLM"
}
}
这会将您输入的json转换为所需的json。
Jolt Transform是一个开源库,可以帮助您使用其他Json文档作为规范来转换Json文档。
如果您想对它们进行参数化,可以像下面这样使用NiFi 1.10.0使用参数:
{
"cells": {
"cf1:#{param1}": "#{param1}",
"cf1:#{param2}": "#{param2}"
}
}
或者将NiFi 1.4.0+与expression language和variable registry结合使用,如下所示:
{
"cells": {
"cf1:${param1}": "${param1}",
"cf1:${param2}": "${param2}"
}
}
所有内容都链接到文档,因此您可以阅读全部内容:)