Apache NiFi
18
In this chapter, we will discuss process categorization in Apache NiFi.
Data Ingestion Processors
The processors under Data Ingestion category are used to ingest data into the NiFi data
flow. These are mainly the starting point of any data flow in apache NiFi. Some of the
processors that belong to these categories are GetFile, GetHTTP, GetFTP, GetKAFKA, etc.
Routing and Mediation Processors
Routing and Mediation processors are used to route the flowfiles to different processors or
data flows according to the information in attributes or content of those flowfiles. These
processors are also responsible to control the NiFi data flows. Some of the processors that
belong to this category are RouteOnAttribute, RouteOnContent, ControlRate, RouteText,
etc.
Database Access Processors
The processors of this Database Access category are capable of selecting or inserting data
or executing and preparing other SQL statements from database. These processors mainly
use data connection pool controller setting of Apache NiFi. Some of the processors that
belong to this category are ExecuteSQL, PutSQL, PutDatabaseRecord, ListDatabaseTables,
etc.
Attribute Extraction Processors
Attribute Extraction Processors are responsible to extract, analyze, change flowfile
attributes processing in the NiFi data flow. Some of the processors that belong to this
category are UpdateAttribute, EvaluateJSONPath, ExtractText, AttributesToJSON, etc.
System Interaction Processors
System Interaction processors are used to run processes or commands in any operating
system. These processors also run scripts in many languages to interact with a variety of
systems. Some of the processors that belong to this category are ExecuteScript,
ExecuteProcess, ExecuteGroovyScript, ExecuteStreamCommand, etc.
Data Transformation Processors
Processors that belong to Data Transformation are capable of altering content of the
flowfiles. These can be used to fully replace the data of a flowfile normally used when a
user has to send flowfile as an HTTP body to invokeHTTP processor. Some of the
processors that belong to this category are ReplaceText, JoltTransformJSON, etc.
Sending Data Processors
Sending Data Processors are generally the end processor in a data flow. These processors
are responsible to store or send data to the destination server. After successful storing or