Gets the content of a FlowFile and puts it to a distributed map cache, using a cache key computed from FlowFile attributes. If the cache already contains the entry and the cache update strategy is 'keep original' the entry is not replaced.'


map, cache, put, distributed


In the list below, the names of required properties appear in bold. Any other properties (not in bold) are considered optional. The table also indicates any default values, and whether a property supports the NiFi Expression Language.

NameDefault ValueAllowable ValuesDescription
Cache Entry IdentifierA FlowFile attribute, or the results of an Attribute Expression Language statement, which will be evaluated against a FlowFile in order to determine the cache key
Supports Expression Language: true
Distributed Cache ServiceController Service API:
The Controller Service that is used to cache flow files
Cache update strategyreplace
  • Replace if present Adds the specified entry to the cache, replacing any value that is currently set.
  • Keep original Adds the specified entry to the cache, if the key does not exist.
Determines how the cache is updated if the cache already contains the entry
Max cache entry size1 MBThe maximum amount of data to put into cache


successAny FlowFile that is successfully inserted into cache will be routed to this relationship
failureAny FlowFile that cannot be inserted into the cache will be routed to this relationship

Reads Attributes:

None specified.

Writes Attributes:

cachedAll FlowFiles will have an attribute 'cached'. The value of this attribute is true, is the FlowFile is cached, otherwise false.

State management:

This processor has no state management.


See Also:

DistributedMapCacheClientService, DistributedMapCacheServer, FetchDistributedMapCache