Operators
An operator represents a vertex of a graph. An operator is a reactive component that reacts only to events from the environment.
The following image is a sample operator along with the input ports and output ports. Each port is associated with a port type, and the application uses color codes to identify compatible port types.

The application provides certain base operators. You can use these base operators in a graph for productive use cases, or customize and use them to derive other operators (for other use cases).
- Connectors to messaging systems (Kafka, MQTT, NATS, and WAMP)
- Connectors to store and read data (File, HDFS, S3)
- Connectors to databases (SAP HANA, SAP Vora)
- Javascript engine for manipulating arbitrary data
- Process operators to execute any program (stateful and stateless) for manipulating data in the graph.
- Operators for type conversion
- Operators for digital signal processing (beta)
- Operators for machine learning (beta)
- Operators for image processing (beta)
Operators require a certain runtime environment for their execution. For example, if an operator executes some JavaScript code, then the operator requires an environment with a JavaScript engine. The Modeler application provides certain predefined environments for operators, and these environments are made available to users as a library of Dockerfiles.
When you execute a graph, the application translates each operator in the graph into processes. It then searches the Dockerfiles for an environment suitable for the operator execution and instantiates a docker image.
