Merges a Group of FlowFiles together based on a user-defined strategy and packages them into a single FlowFile. It is recommended that the Processor be configured with only a single incoming connection, as Group of FlowFiles will not be created from FlowFiles in different connections. This processor updates the mime.type attribute as appropriate.
Tags: merge, content, correlation, tar, zip, stream, concatenation, archive, flowfile-stream, flowfile-stream-v3
Properties:
In the list below, the names of required properties appear in bold. Anyother properties (not in bold) are considered optional. The table also indicates any default values, whether a property supports the NiFi Expression Language (or simply EL), and whether a property is considered "sensitive", meaning that its value will be encrypted. Before entering a value in a sensitive property, ensure that the nifi.properties file has an entry for the property nifi.sensitive.props.key.
Name | Description | Default Value | Valid Values | EL | Sensitive |
---|---|---|---|---|---|
Merge Strategy | Specifies the algorithm used to merge content. The 'Defragment' algorithm combines fragments that are associated by attributes back into a single cohesive FlowFile. The 'Bin-Packing Algorithm' generates a FlowFile populated by arbitrarily chosen FlowFiles | Bin-Packing Algorithm |
| No | No |
Merge Format | Determines the format that will be used to merge the content. | Binary Concatenation |
| No | No |
Attribute Strategy | Determines which FlowFile attributes should be added to the bundle. If 'Keep All Unique Attributes' is selected, any attribute on any FlowFile that gets bundled will be kept unless its value conflicts with the value from another FlowFile. If 'Keep Only Common Attributes' is selected, only the attributes that exist on all FlowFiles in the bundle, with the same value, will be preserved. | Keep Only Common Attributes |
| No | No |
Correlation Attribute Name | If specified, like FlowFiles will be binned together, where 'like FlowFiles' means FlowFiles that have the same value for this Attribute. If not specified, FlowFiles are bundled by the order in which they are pulled from the queue. | No | No | ||
Minimum Number of Entries | The minimum number of files to include in a bundle | 1 | No | No | |
Maximum Number of Entries | The maximum number of files to include in a bundle. If not specified, there is no maximum. | No | No | ||
Minimum Group Size | The minimum size of for the bundle | 0 B | No | No | |
Maximum Group Size | The maximum size for the bundle. If not specified, there is no maximum. | No | No | ||
Max Bin Age | The maximum age of a Bin that will trigger a Bin to be complete. Expected format is <duration> <time unit> where <duration> is a positive integer and time unit is one of seconds, minutes, hours | No | No | ||
Maximum number of Bins | Specifies the maximum number of bins that can be held in memory at any one time | 100 | No | No | |
Header File | Filename specifying the header to use. If not specified, no header is supplied. This property is valid only when using the binary-concatenation merge strategy; otherwise, it is ignored. | No | No | ||
Footer File | Filename specifying the footer to use. If not specified, no footer is supplied. This property is valid only when using the binary-concatenation merge strategy; otherwise, it is ignored. | No | No | ||
Demarcator File | Filename specifying the demarcator to use. If not specified, no demarcator is supplied. This property is valid only when using the binary-concatenation merge strategy; otherwise, it is ignored. | No | No | ||
Compression Level | Specifies the compression level to use when using the Zip Merge Format; if not using the Zip Merge Format, this value is ignored | 1 |
| No | No |
Keep Path | If using the Zip or Tar Merge Format, specifies whether or not the FlowFiles' paths should be included in their entry names; if using other merge strategy, this value is ignored | false |
| No | No |
Relationships:
Name | Description |
---|---|
merged | The FlowFile containing the merged content |
original | The FlowFiles that were used to create the bundle |
failure | If the bundle cannot be created, all FlowFiles that would have been used to created the bundle will be transferred to failure |