Fuusion Architect: User interface that allows a Fuusion Flow to be configured.
Fuusion Flow: A NiFi flow that has been configured to run across Fuusion Agents in a Fuusion Domain.
Fuusion Agent: Software that can be deployed on a container, VM or system that can operate and execute a Fuusion Flow as part of a Fuusion Domain.
Fuusion Domain: One or more Fuusion Agents registered to work together as part of a Fuusion Flow of which there will be one Fuusion Controller agent that maintains primary control and monitoring of all the Fuusion Agents in the Fuusion Flow.
DataFlow Manager: A DataFlow Manager (DFM) is a Fuusion user who has permissions to add, remove, and modify components of a Fuusion dataflow.
FlowFile: The FlowFile represents a single piece of data in Fuusion. A FlowFile is made up of two components: FlowFile Attributes and FlowFile Content. Content is the data that is represented by the FlowFile. Attributes are characteristics that provide information or context about the data; they are made up of key-value pairs. All FlowFiles have the following Standard Attributes:
uuid: A unique identifier for the FlowFile
filename: A human-readable filename that may be used when storing the data to disk or in an external service
path: A hierarchically structured value that can be used when storing data to disk or an external service so that the data is not stored in a single directory
Fuusion Engine: Component of a Fuusion Agent that can execute NiFi flow processing (NiFi engine).
Fuusion Manager: Component of a Fuusion Controller Agent that performs the operations such as remote Agent registration, license and entitlement enforcement.
Processor: The Processor is the Fuusion component that is used to listen for incoming data; pull data from external sources; publish data to external sources; and route, transform, or extract information from FlowFiles.
Fuusion Connector: A part of a Fuusion Flow that ingests data from a source or outputs data to a target. It may be a single NiFi processor or a custom processor group.
Connection: A DFM creates an automated dataflow by dragging components from the Components part of the Fuusion toolbar to the canvas and then connecting the components together via Connections. Each connection consists of one or more Relationships. For each Connection that is drawn, a DFM can determine which Relationships should be used for the Connection. This allows data to be routed in different ways based on its processing outcome. Each connection houses a FlowFile Queue. When a FlowFile is transferred to a particular Relationship, it is added to the queue belonging to the associated Connection.
Fuusion Controller Agent: A Fuusion Agent that can operate as part of a Fuusion Domain and handle the management tasks for the Fuusion Domain (registration, licensing, billing, configuration, UI, logging, monitoring, control, etc).
Note: Only 1 Fuusion Controller Agent will exist for a Fuusion Domain.
Fuusion Toolbag: A set of starter solutions and useful flow snippets that can be added to the Fuusion Architect to create and modify Fuusion Flows
Fuusion Toolbox: Fuusion templates, processor groups and processors that are included in the Fuusion product to build a Fuusion Flow.
Fuusion UltraFast: UltraFast is a Fuusion feature that provides high speed data transfer, accelerating storage traffic up to 20x compared to TCP/IP network transmission speeds. Unlike WAN acceleration products, UltraFast is an intelligent, self-tuning storage acceleration technology over the WAN, based on UDP, that is designed to address latency, congestion, poor QoS and slow data replication speeds, without redesigning or changing applications, networks or storage. Bandwidth Scheduling enables throughput and bandwidth throttling schedules to regulate network traffic and prioritize bandwidth use. See Fuusion Ultrafast for more details.
Controller Service: Controller Services are extension points that, after being added and configured by a DFM in the User Interface, will start up when Fuusion starts up and provide information for use by other components (such as processors or other controller services). A common Controller Service used by several components is the StandardSSLContextService. It provides the ability to configure keystore and/or truststore properties once and reuse that configuration throughout the application. The idea is that, rather than configure this information in every processor that might need it, the controller service provides it for any processor to use as needed.
Relationship: Each Processor has zero or more Relationships defined for it. These Relationships are named to indicate the result of processing a FlowFile. After a Processor has finished processing a FlowFile, it will route (or “transfer”) the FlowFile to one of the Relationships. A DFM is then able to connect each of these Relationships to other components in order to specify where the FlowFile should go next under each potential processing result.
Reporting Task: Reporting Tasks run in the background to provide statistical reports about what is happening in the Fuusion instance. The DFM adds and configures Reporting Tasks in the User Interface as desired. Common reporting tasks include the ControllerStatusReportingTask, MonitorDiskUsage reporting task, MonitorMemory reporting task, and the StandardGangliaReporter.
Fuusion Funnel: A funnel is a Fuusion component that is used to combine the data from several Connections into a single Connection.
Process Group: When a dataflow becomes complex, it often is beneficial to reason about the dataflow at a higher, more abstract level. Fuusion allows multiple components, such as Processors, to be grouped together into a Process Group. The Fuusion User Interface then makes it easy for a DFM to connect together multiple Process Groups into a logical dataflow, as well as allowing the DFM to enter a Process Group in order to see and manipulate the components within the Process Group.
Port: Dataflows that are constructed using one or more Process Groups need a way to connect a Process Group to other dataflow components. This is achieved by using Ports. A DFM can add any number of Input Ports and Output Ports to a Process Group and name these ports appropriately.
Remote Process Group: Just as data is transferred into and out of a Process Group, it is sometimes necessary to transfer data from one instance of Fuusion to another. While Fuusion provides many different mechanisms for transferring data from one system to another, Remote Process Groups are often the easiest way to accomplish this if transferring data to another instance of Fuusion.
Bulletin: The Fuusion User Interface provides a significant amount of monitoring and feedback about the current status of the application. In addition to rolling statistics and the current status provided for each component, components are able to report Bulletins. Whenever a component reports a Bulletin, a bulletin icon is displayed on that component. System-level bulletins are displayed on the Status bar near the top of the page. Using the mouse to hover over that icon will provide a tool-tip that shows the time and severity (Debug, Info, Warning, Error) of the Bulletin, as well as the message of the Bulletin. Bulletins from all components can also be viewed and filtered in the Bulletin Board Page, available in the Global Menu.
Template: Often times, a dataflow is comprised of many sub-flows that could be reused. Fuusion allows DFMs to select a part of the dataflow (or the entire dataflow) and create a Template. This Template is given a name and can then be dragged onto the canvas just like the other components. As a result, several components may be combined together to make a larger building block from which to create a dataflow. These templates can also be exported as XML and imported into another Fuusion instance, allowing these building blocks to be shared.
flow.xml.gz: Everything the DFM puts onto the Fuusion User Interface canvas is written, in real time, to one file called the flow.xml.gz. This file is located in the Fuusion/conf directory by default. Any change made on the canvas is automatically saved to this file, without the user needing to click a "save" button. In addition, Fuusion automatically creates a backup copy of this file in the archive directory when it is updated. You can use these archived files to rollback flow configuration. To do so, stop Fuusion, replace flow.xml.gz with a desired backup copy, then restart Fuusion. In a clustered environment, stop the entire Fuusion cluster, replace the flow.xml.gz of one of nodes, and restart the node. Remove flow.xml.gz from other nodes. Once you confirmed the node starts up as a one-node cluster, start the other nodes. The replaced flow configuration will be synchronized across the cluster. The name and location of flow.xml.gz, and auto archive behavior are configurable. See NiFi's Core Properties section for further details.
Fuusion Agent: A Fuusion entity that can be deployed in the cloud which will contain a Fuusion Engine can execute part of a Fuusion Flow.
Fuusion Manager: Admin interface that will allow the user to manage the Fuusion deployment and flow.