Configuring your Controller Services

You can add Controller Services that can provide shared services to be used by the Processors in your dataflow. Create them after you build the NiFi dataflow and before you configure the Processors, so that they are available when you configure your NiFi Processors.

You have built the dataflow on the NiFi canvas.

For this dataflow, create two Controller Services.

  • DBCPConnectionPool
  • CSVReader

See the Related Information section below, for links to full details about these Apache NiFi Controller Services.

  1. To add a Controller Service to your flow, right-click on the canvas and select Configure from the pop-up menu. This displays the Controller Services Configuration window.
  2. Select the Controller Services tab.
  3. Click the + button to display the Add Controller Service dialog.
  4. Select the required Controller Service and click Add.
  5. Click the Configure icon in the right-hand column and configure the necessary options.
  6. When you have finished configuring the options you need, click Apply to save the changes.
  7. Click the Enable button (flash) in the far-right column of the Controller Services tab to enable the Controller Service.


Reuse the same DBCPConnectionPool Controller Service that you created before to interact with the Snowflake database.

Property Description Example value for Snowflake ingest dataflow
Name Rename to SnowflakeJDBCConnectionPool
Database Connection URL


  • <account_name> is similar to cb56215.europe-west2.gcp
  • <connection_parameters> is similar to db=DEMO_DB
Database Driver Class Name net.snowflake.client.jdbc.SnowflakeDriver


In this example, you are generating CSV data to ingest into the Snowflake remote database table. As a result, you must also configure a CSVReader Controller Service to parse the data. You require the CSV data to correctly construct the queries executed against the table to ingest the data.

You can accept the default configurations.

Once you have configured your Controller Services, proceed to the following tasks:

  • Configure your source Processor.
  • Configure your target Processor.
  • Confirm your dataflow success