There are different types of components, each performing a different type of processing. An example of a basic component would be a filter, which filters only those records which match certain criteria. An example of a complex component would be a session window, which can perform aggregations in a session window.
Some components need to be configured before they can be used from the Designer. Enrichers are a good example of such components - database connection information, openAPI service location, etc. are configured in the component configuration.
Nussknacker can use one of two engines:
- Lite - scenarios are deployed as microservices on K8s
- Flink - (only Streaming mode) scenarios are deployed as Flink jobs
Nussknacker is a highly configurable tool, it can work with different engines, multiple instances of the same engine, multiple components configurations. The term model is used to integrate all the 'moving parts' which work behind the scenes of the scenario. Model comprises:
- components and helper variables
- expressions language configuration
- error handling strategy
Almost all nodes take parameters. For example a filter node takes a boolean expression as a parameter. This expression is evaluated at runtime to decide whether a given event should pass the filter node.
Part of Nussknacker where authoring of scenarios is performed.
Scenario describes a decision algorithm i.e. how events should be processed and what actions should be performed. Scenarios are authored by means of Nussknacker Designer. Scenarios are composed of nodes.