我有一個不斷更新新項目的Json文件。 使用Nifi我想創建一個流從這個Json文件中提取內容,然後創建一個可以是CSV的輸出文件,以便我可以在Excel中對它進行一些分析。 我是Nifi的新手,你可以提出一些關於這個事件的流程嗎? 任何讓我開始的事情都會更有幫助。從Json文件Nifi流式傳輸
0
A
回答
3
有此流程來執行一些操作,我可以提供一些方法來解決每個:
檢索更新JSON文件:要不斷地獲得該文件(如果它已經改變)您可以使用連接到FetchFile處理器的ListFile處理器,並將FetchFile屬性「完成策略」設置爲「無」。這將使JSON文件保留在文件系統上。如果JSON文件不斷重新生成,則可以使用「移動」或「刪除」策略。
提取JSON值(如果文件內容被更改時替換):如果要查找的值位於相同位置(即始終存在相同的JSONPath表達式),則可以使用EvaluateJsonPath將值提取到屬性中。要將值返回到內容中(用於轉換爲CSV),可以使用ReplaceText(使用表達式語言)將屬性放回到內容中。
提取JSON值(如果新項目插入到文檔中):如果項目是數組的一部分,則可以使用SplitJson爲文檔中的每個元素生成流文件。這將涉及更復雜的處理,因爲您可能會忽略已經看到的元素。您可以使用ReplaceText(見上文)將特定值放入內容中,然後使用Put/FetchDistributedMapCache檢查數組元素是否已經處理。
輸出CSV:對於每個包含要作爲CSV字段的屬性的流文件,可以使用ReplaceText生成一行CSV。然後,您可以使用MergeContent創建完整的CSV文件。請注意,這將不包含標題,您可以使用最終的替換文字插入標題行,然後插入傳入的內容。然後PutFile將CSV文件寫入磁盤。
相關問題
- 1. 如何使用NiFi API在NiFi中傳輸流文件?
- 2. 從文件流式傳輸數字
- 3. CodenameOne從PLS文件流式傳輸?
- 4. 從文件流式傳輸變量
- 5. 從WCF服務流式傳輸文件
- 6. 從SharpSSH流式傳輸文件
- 7. 如何從節點流式傳輸JSON?
- 8. NodeJS從python流式傳輸JSON
- 9. 流式傳輸wav文件
- 10. 流式傳輸MP4文件
- 11. NiFi:查看流文件
- 12. 使用WCF流式傳輸上傳文件,從流式傳輸中讀取微小的文件
- 13. 傳輸文件流
- 14. 從Windows 8的SavePicker將文件流式傳輸到文件
- 15. 從掛載的smb文件系統流式傳輸文件
- 16. 從iCloud流式傳輸?
- 17. 從Sharepoint WCF流式傳輸
- 18. 如何流式傳輸MP3文件(iOS)
- 19. 用櫻桃流式傳輸文件
- 20. 流式傳輸短聲文件
- 21. 流式傳輸遠程文件
- 22. 實時流式傳輸MP4文件
- 23. http實時流式傳輸mp3文件
- 24. 如何流式傳輸WAV文件?
- 25. Flash HTTP流式傳輸 - 多個文件
- 26. 流式傳輸WAV文件。 (不記錄)
- 27. 在Django中流式傳輸CSV文件
- 28. iOS:大文件流式傳輸
- 29. io.lines()是否流式傳輸文件?
- 30. 在Node.js中流式傳輸大文件