Drag and drop Kafka applications with no IT hustle
Nussknacker
Let domain experts do their job by drag-and-drop decision algorithms and developers just code the integrations. Introduce changes in seconds not months
trusted by financial and telecom companies to handle heavy data processing and decision making
simply express the decision logic
Nussknacker allows domain experts to define decision algorithms in the most natural way. Instead of sets of interdependent rules or SQL statements, they work with easy-to-follow and understand flow diagrams.
for logical conditions, calculations and other expressions that complement the diagrams there's a powerful expression language. It's based on SpEL (Spring Expression Language) and supports advanced querying and manipulation of data.
to make writing those expressions easier, Nussknacker integrates with various metadata sources, to automatically discover the structure of input and output data. This information is utilized by advanced contextual expression suggestions, autocompletion and validation mechanism.
enrich the data, enhance the decisions
the data in the event that triggers a decision is often not enough to make the decision. Nussknacker can enrich it with information from various sources: private and public APIs, databases and machine learning models.
that doesn't mean domain experts have to worry about addresses, credentials etc. They can focus on business logic because Nussknacker hides all of the technical details under the hood. And, no matter the enrichment source, Nussknacker, as always, helps users by using available metadata to provide automatic suggestions and validation.
test before you deploy, monitor the results
Nussknacker wants users to feel safe and confident about the changes they make. That's why it provides different testing and debugging mechanisms.
You can test on data recorded from a live environment or provide your own test cases. You can also monitor execution paths of a running scenario for debugging purposes.
And if you need more technical details, Nussknacker makes numerous metrics available on a Grafana® dashboard out of the box. You can easily check scenario throughput, statistics about decisions made, errors and more.
deploy anytime, all the time
Nussknacker encourages iterative improvements of decision algorithms. Once created or modified, decision scenarios are deployed for execution with a click of a button. And you can always revert to an older version or compare different versions of a scenario, thanks to full version history.
ease of use
- flow diagrams for decision algorithms
- powerful expression language
- autocompletion and validation
- testing and monitoring tools
- REST (OpenAPI) and data base (JDBC) enrichments
- ML models inferring enrichments → more
- one-click deployment
- version history
deployment flexibility
- running on Flink or K8s-based lightweight engine
- Kafka® and HTTP interfaces
- integrates with Kafka-compatible platforms like Confluent® Cloud, Azure Event Hubs® and Aiven® for Apache Kafka®
- streaming and request-response modes
- customisable and extensible
- open source with enterprise extensions
- on premises and cloud
From an architectural point of view, Nussknacker is a decision service. It fits various event driven architectures, streaming and request-response.
In streaming use cases Nussknacker can connect directly to any Kafka-compatible streaming platform. Or, if you don't want to use Kafka, Nussknacker also has an HTTP interface with a subscription mechanism that can receive input streams and send output streams over HTTP.
For synchronous, request-response use cases Nussknacker creates an OpenAPI service for every decision scenario.
And whatever the source of input data, Nussknacker can enrich it with information from:
- any REST endpoint with an OpenAPI definition
- any database available via JDBC
- by inferring ML models prepared in one of the popular technologies such as Scikit-learn, PyTorch, TensorFlow, ONNX, PMML or as a custom Python function
use cases
Real-time marketing
Communications with customers in real-time, providing event-driven offers and actions
Read a customer story
Fraud management
Mitigating fraud by running detection algorithms on network or device signals
Read a customer story
Next Best Action
Assisting the Point Of Sale, displaying suggestions about what to offer and how to proceed with a customer
Read a blog post
Customer data processing
Decisioning on dynamic customer data in
- dynamic pricing
- order status management
- instant credit scoring
Internet of Things
Automating actionable data in
- predictive maintenance
- inventory management
- smart devices
See demo
ML models deployment
Infer Machine Learning models from within complex decision algorithms
Read a blog post
offer
Free
Cloud
Quick solution for straightforward yet demanding data streaming tasks without exhausting investment decisions
Premium
Cloud
Ready-to-use collection of features and integrations for advanced data environments with affordable infrastructure maintenance expenses
Enterprise
On premise
Extensible tool fitted for superior technology stacks where unique data integrity is required
blog
Real-Time Recommendations: Using Machine Learning in Clickstream Processing Pipeline
Nussknacker simplifies the integration of machine learning models into streaming data processes. Software teams can now build intelligent recommendation systems using Nussknacker, Snowplow, and MLflow.
Using Nussknacker with Apache Iceberg: Periodical report example
Nussknacker now supports Flink catalogs. This means you can use it with Apache Iceberg for tasks like data ingestion, transformation, aggregation, enrichment, and creating business logic. This blog post will show you how to use Nussknacker and Apache Iceberg together for a real-world example
ML models inference in fraud detection
How to simplify the integration of ML models into business applications, automate many of the technical complexities, and support advanced techniques like A/B testing and ensemble models. A fraud detection example
next steps
see the demo in action
try it yourself
feel free to contact us if you have any questions