Is Nifi having batch processing?

强颜欢笑 提交于 2019-12-18 09:23:28

问题


i just need to know is this possible to run serious of processors untill its completion.

"the execution of a series of processors in process group wait for anthor process group results execution to be complete".

For example:

i having 3 processors in Nifi UI.

P1-->P2-->P3
P-->Processor



Now i need to run p1 if it run completely then run P2 And finally it will run like sequence but one wait for another to be complete.

EDIT-1:

just for example I have data in web url.i can download that data using GetHTTP Processor now i stored that in putFile content.If file saved in putFile directory then run FetchFile to process that file into my database like below workflow.

GetHTTP-->PutFile-->FetchFile-->DB

Is this possible it's like batch processing scanerio?

If anythink i'm doing wrong please stop me.


回答1:


NiFi itself is not really a batch processing system, it is a data flow system more geared towards continuous processing. Having said that, there are some techniques you can use to do batch-like operations, depending on which processors you're using.

The Split processors (SplitText, SplitJSON, etc.) write attributes to the flow files that include a "fragment.identifier" which is unique for all splits created from an incoming flow file, and "fragment.count" which is the total number of those splits. Processors like MergeContent use those attributes to process a whole batch (aka fragment), so the output from those kinds of processors would occur after an entire batch/fragment has been processed.

Another technique is to write an empty file in a temp directory when the job is complete, then a ListFile processor (pointing at that temp directory) would issue a flow file when the file is detected.

Can you describe more about the processors in your flow, and how you would know when a batch was complete?



来源:https://stackoverflow.com/questions/41607235/is-nifi-having-batch-processing

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!