我正在創建一個NiFi WorkFlow來將CSV轉換爲JSON,並且我需要幫助配置ConvertRecords的JsonRecordSetWriter控制器服務。發生什麼事是一個SchemaNotFoundException異常被拋出,說「無法找到名稱爲'ccr'的架構(我爲架構選擇的名稱)。架構是使用」InferAvroSchema「從CSV文件的頭部推斷的,」UpdateAttribute 「被配置爲添加一個名爲」schema.name「的屬性,該屬性被設置爲'ccr'(根據來自其他指導和指導的指導)。JsonRecordSetWriter被配置爲使用控制器服務」AvroSchemaRegistry「以及添加的屬性命名爲「ccr」,此屬性的值設置爲「$ {inferred.avro.schema}」。我希望將屬性「inferred.avro.schema」中包含的派生模式用於代替必須將avro模式的實際文本作爲值添加到此添加的屬性中InferAvroSchema的SchemaOutputDestination屬性設置爲值「flowfile-attribute」,意味着推斷的avro模式將被放入名爲「inferred.avro.schema」的屬性中。真的需要幫助,我不能憑藉項目的要求將模式指定爲文本。相反,我想使用推斷的模式,以便我可以使用同一個工作流處理不同標題和數據內容的CSV文件。任何幫助和指導,你可以與我分享,我將不勝感激。需要幫助配置NiFi的JsonRecordSetWriter和AvroSchemaRegistry
-1
A
回答
0
如果您的讀者或作者的架構訪問策略設置爲「架構名稱」,那麼它必須從架構註冊表中檢索架構名稱,架構註冊表不會了解有關$ {inferred.avro .schema},它位於流文件中。
您可以將您的編寫器設置爲使用「架構文本」的架構訪問策略,並在架構文本字段中放置$ {inferred.avro.schema},以便動態獲取傳入流文件中的架構文本。根據您的要求,您目前沒有使用架構註冊表。
一個不同的選項,它可能適合你...如果你在1.4.0版本,你可以消除InferAvroSchema。您可以使用ConvertRecord和CsvReader並將Schema訪問策略設置爲「使用來自標題的字符串字段」,以便讀者推斷一個模式,然後在您的JsonRecordSetWriter中將模式訪問啓動設置爲「從Reader繼承」,以便它使用相同的由讀者確定的模式。早期版本中不存在繼承功能,這就是爲什麼這取決於1.4.0。
+0
Bende先生,它工作了!非常感謝您提供乾淨清爽的指導。對此,我真的非常感激! –
相關問題
- 1. 需要幫助配置ImageMagick
- 2. 需要幫助的Nginx的CGI配置
- 3. 我需要幫助日食的配置
- 4. 木偶配置需要幫助
- 5. 需要幫助解析配置數據
- 6. haskell fastcGI on lighttpd,需要配置幫助
- 7. Jenkins需要幫助配置Sphinx
- 8. 需要幫助使用asadmin配置GlassFish
- 9. 需要幫助配置LDAP acl
- 10. 需要幫助配置城堡溫莎
- 11. 需要幫助來配置CanCanCan for activeadmin
- 12. 我需要幫助配置ASP.net簡介
- 13. 需要幫助設置SMTP
- 14. 需要幫助設置RoboSpock
- 15. 需要幫助設置htaccess
- 16. Lighttpd和Apache Django配置需要的幫助
- 17. 需要幫助
- 18. 需要幫助
- 19. Facebook和TYPO3需要幫助
- 20. 需要幫助PHP和MySQL
- 21. 需要幫助REGEXP_SUBSTR和REGEXP_LIKE
- 22. 需要JQuery和Ajax幫助
- 23. 在Apache NIFi中使用ContentMerge追加JSON文件需要幫助
- 24. 需要幫助配置/設置使用Git(新)
- 25. 配置Crystal Reports所需的幫助
- 26. 需要幫助擴展通配符
- 27. 我需要幫助匹配數據點
- 28. cssSandpaper.js幫助需要?
- 29. 需要ActionListener幫助!
- 30. 需要MySQL幫助
你應該考慮格式化你的問題,以便它實際上是可讀的。 – glennsl