Target releaseRelease name or number
EpicLink to related JIRA epic or feature
Document status
Document owner

Joseph Percivall

DesignerLead designer
DevelopersLead developer
QALead tester

Goals

Background and strategic fit

The purpose of NiFi is to get the right data to the right place. Currently that is done in an effectively stateless manner by routing on the content and attributes of a single FlowFile. Now that NiFi has state for processors this opens up a whole new opportunity to leverage stateful processors to route data. An example of which is numeric anomaly detection using outliers. If a user only cares about the outliers generated by a sensor currently they have to route the data to another system to do streaming analysis before potentially routing the data back to a NiFi instance to finishing routing. With a stateful UpdateAttribute, users would be able to properly route just the outliers to their intended destination. 

This would open up many new use-cases in the IoT and Enterprise fields that currently have to be offloaded to streaming analytics platforms. 

Assumptions

Requirements

#TitleUser StoryImportanceNotes
1Add state to UpdateAttributeDataflow manager wants to do stateful analysis using the life of the flow. 

2

Create a new RollingWindowAggregator processor

Dataflow manager wants to do stateful aggregation using a rolling window of values. 

User interaction and design

Include any mockups, diagrams or visual designs relating to these requirements.

Questions

Below is a list of questions to be addressed as a result of this requirements document:

QuestionOutcome
(e.g. How we make users more aware of this feature?)Communicate the decision reached

Not Doing