我需要使用 Nifi 中的 JoltTransformJSON 转换 JSON 数据,这是我用于转换的规范:
[{
"operation": "shift",
"spec": {
"*": {
"Header": {
"readOn": "created_date_time",
"fileName": "readFile"
},
"Data": {
"id": "Id",
"first_name": "First_Name",
"last_name": "Last_Name",
}
}
}}]
我的输入数据:
[{
"Header": {
"readOn": "2017/04/18 10:55:05",
"fileName": "sample1.csv",
"recordNum": 1
},
"Data": {
"last_name": "Martin",
"id": 21,
"first_name": "Clarence"
}
}, {
"Header": {
"readOn": "2017/04/18 10:55:05",
"fileName": "sample.csv",
"recordNum": 2
},
"Data": {
"last_name": "Graham",
"id": 22,
"first_name": "Walter"
}
}]
输出我得到的内容:
{
"created_date_time": ["2017/04/18 10:55:05", "2017/04/18 10:55:05"],
"readFile": ["sample1.csv", "sample2.csv"],
"Id": [21, 22],
"First_Name": ["Clarence", "Walter"],
"Last_Name": ["Martin", "Graham"]
}
所需的输出:
[{
"recordNum": 1,
"Header": {
"created_date_time": "2017/04/18 10:55:05",
"readFile": "getusroi.csv"
},
"Data": {
"Last_Name": "Martin",
"Id": 21,
"First_Name": "Clarence"
}
}, {
"recordNum": 2,
"Header": {
"created_date_time": "2017/04/18 10:55:05",
"readFile": "getusroi.csv"
},
"Data": {
"Last_Name": "Graham",
"Id": 22,
"First_Name": "Walter"
}
}]
问:有人能指导我在哪里我需要改变我的震动规格,以实现所需的转换输出。
诀窍是沿着树往回走,直到到达数组中的元素,然后可以在目标中引用该索引。试试这个规格:
[
{
"operation": "shift",
"spec": {
"*": {
"Header": {
"recordNum": "[&2].recordNum",
"readOn": "[&2].&1.created_date_time",
"fileName": "[&2].&1.readFile"
},
"Data": {
"id": "[&2].&1.Id",
"first_name": "[&2].&1.First_Name",
"last_name": "[&2].&1.Last_Name"
}
}
}
}
]
NiFi在JOLT处理器中抛出了一个错误--尽管在“高级”处理器接口中的测试工作完美无缺! 以前有人遇到过这种错误吗?
我需要将输入日期更改为SQL友好格式,以便将其插入到数据库中。当我试图插入到DB时,imported_at和processed_at都出现错误。 我的流:jolttransformjson->convertjsontosql->PutSql 输入:
我有一个JoltTransformJSON处理器。我想使用FlowFile属性(包含Jolt规范)作为规范。 当我尝试这样做时,会出现验证错误“提供的JSON规范不是有效的JSON格式”。 我用的是NiFi 1.6
在apache nifi 1.10源代码中,我可以在nifi-nar-bundles/nifi-druid-bundle/nifi-druid-processors/src/main/java/org/apache/nifi/processors/druid/PutDruidRecord.java中找到PutDruidRecord代码 但是,我在nifi 1.10ui nifi画布中找不到这个处理
我在运行FetchElasticSearch处理器时出现了奇怪的错误,下面是错误。 FetChelasticSearch[ID=F2B2FEE3-B940-4A73-8A28-0436E765C9A2]无法读取到Elasticsearch中,原因是没有配置的节点可用:[{#Transport#-1}{127.0.0.1}{localhost/127.0.0.1:9500}],这可能表示配置错误(主
我正在调试一个HiveProcessor,它遵循官方的PutHiveStreaming处理器,但它写入的是Hive2.x,而不是3.x。该流在Nifi cluster 1.7.1中运行。尽管发生此异常,但数据仍被写入配置单元。 例外情况是: 有人做过类似的事吗?或者有没有更简单的方法来调试自定义处理器?