What is Parameter Context inheritance?

With Inherited Parameter Contexts, you can make granular updates to Parameter Contexts and have the changes propagate to all Contexts that inherit from them.

Parameter Context is a named set of parameters with applied access policies in Apache NiFi. Using Parameter Contexts is a powerful way to make flows more portable. Paired with Process Groups, Parameter Contexts allow different values to be supplied to the same basic flow in multiple NiFi instances, or even within the same overall NiFi flow in a single instance. However, as the number of parameters grows, Parameter Contexts can become more difficult to maintain and can result in a monolithic Parameter Context. If you collect all parameters in a root Parameter Context, you are parameterizing your Process Groups with more parameters than they need, as some of the parameters included in the Parameter Context are applicable only to certain Process Groups.

The goal is to avoid parameter duplication and yet still compose groups of parameters as needed. Starting with Apache NiFi 1.15.0, Parameter Contexts support inheritance, so you can add inherited Parameter Contexts to an existing Parameter Context. This feature brings more flexibility and maintainability to NiFi’s already powerful Parameter Context framework. Using inheritance makes it easier to manage common sets of parameters used across many flows and adjust specific parameters for a given instance as needed. Creating Parameter Contexts through inheritance provides the opportunity to use a structure of smaller, logically grouped Parameter Contexts and design your flows with these smaller, composable Contexts. Once you set up the inheritance hierarchy, you can make granular updates and have the changes propagate to all other Contexts that inherit from it.

For more information about Process Groups, see Configuring a Process Group in the Apache NiFi User Guide.

For more information about Parameter Contexts, see Parameter Contexts in the Apache NiFi User Guide.