You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 7 Next »

This article will walk through some of the configuration options within MiNiFi CPP.  As discussed in the Readme, MiNiFi C++ is configured through two files, a config YAML file that includes the flow configuration and general properties for the MiNiFi process. . Users can use the MiNiFi toolkit converter to help create flow configurations from a template exported from a NiFi instance. This document will assume that the YAML configuration will be generated by the toolkit. 

System Properties


Flow Configuration options

 

Processors

Processors are defined within the YAML configuration, below. You must specify the number of concurrent tasks, the scheduling strategy, the NiFi class  and properties, if there are any to define.The id is a unique identifier

that must be defined for each processor. When specifying connections, you will reference the success relationships and this identifier as either the source and/or destination ID.

Processors:
    - name: GetFile
      id: 471deef6-2a6e-4a7d-912a-81cc17e3a206
      class: org.apache.nifi.processors.standard.GetFile
      max concurrent tasks: 1
      scheduling strategy: TIMER_DRIVEN
      scheduling period: 1 sec
      penalization period: 30 sec
      yield period: 1 sec
      run duration nanos: 0
      auto-terminated relationships list:
      Properties:
          Input Directory: /tmp/getfile
          Keep Source File: true


Connections

 


Remote processing Groups

 


Provenance Reporting

To add Provenance Reporting to config.yml, define a configuration block like the one below. Define your RPG host, port, and UUID using

the Site To Site protocol. The batch size will limit the number of provenance reports that are sent to the aforementioned NiFi instance. 

Provenance Reporting:
  scheduling strategy: TIMER_DRIVEN
  scheduling period: 1 sec
  port: 10001
  host: localhost
  port uuid: 471deef6-2a6e-4a7d-912a-81cc17e3a204
  batch size: 100

Controller Services

If you need to reference a controller service in your config.yml file, use the following template. In the example, below, ControllerServiceClass is the name of the class defining the controller Service. ControllerService1 is linked to ControllerService2, and requires the latter to be started for ControllerService1 to start.

Controller Services:
  - name: ControllerService1
    id: 2438e3c8-015a-1000-79ca-83af40ec1974
  	class: ControllerServiceClass
  	Properties:
      Property one: value
      Linked Services:
        - value: ControllerService2
  - name: ControllerService2
    id: 2438e3c8-015a-1000-79ca-83af40ec1992
  	class: ControllerServiceClass
  	Properties:

 

  • No labels