Solution · Stream Crunch / Real-time decisions / v1.4 · Production

Act on every event.
Not hours later 500 ms later.

A high-performance streaming and decision engine that ingests, processes, and acts on data the moment it happens — built on Kafka and Flink, abstracted so business analysts can ship rules without writing a line of code.

01Source
02Basic Fields
03Computed
04Rules
05Sink
412P50 // ms
487P95 // ms
10K+Events // sec
Exactly-1Delivery
— The fraud landscape

Why this matters,
right now.

Digital banking fraud in South Africa is accelerating. Detection windows measured in hours don't work anymore — the loss has already happened. Stream Crunch is purpose-built for the millisecond gap.

86%
Surge in digital banking fraud
South Africa, 2024 vs prior year
~98K
Reported digital banking fraud incidents
Across 2024
R1.9B
Estimated losses from digital banking fraud
Annual, South Africa
52K → 98K
Year-on-year incident growth
2023 to 2024
// source: SABRIC Annual Crime Stats 2024
— The problem

Organisations are drowning in data they can only act on after the fact.

// 01

Batch lag

Insights arrive hours or days after the event. By then, the damage is done — fraud has cleared, the customer has churned, the SLA has slipped.

// 02

Code complexity

Building real-time pipelines requires deep Kafka and Flink expertise — and months of engineering before the first rule fires in production.

{ }
// 03

Rigid systems

Changing rules or models means code changes, testing cycles, and redeployments. By the time you ship, the fraud pattern has already shifted.

— What is Stream Crunch

A high-performance, real-time data streaming platform that ingests, processes, and acts on data as it happens.

// step 01

Ingest

Connect to any event source. Process thousands of events per second with guaranteed delivery semantics.

// step 02

Process

Apply rules, ML models, and aggregations on each event in-flight with stateful stream processing.

amount > 5000txn_count_5mgeo_distancedevice_matchvelocity_1h
// step 03

Act

Trigger automated actions, alerts, and workflows the moment a pattern is detected. No human delay.

BLOCK · txn_id 8a4f…
PASS · txn_id 91c2…
STEP-UP · auth challenge
— Why Stream Crunch

Stream Crunch abstracts the complexity of real-time stream processing.

// 01 — operate

No-code

Build aggregations, rules, and streams without writing Kafka or Flink code. Business analysts ship logic; engineers focus on platform.

→ self-service
// 02 — adapt

Real-time

Configuration changes apply live, with zero downtime or restarts. Tweak a rule, save, watch it fire on the next event.

→ live config
// 03 — trust

Resilient

Built-in fault tolerance with automatic recovery and exactly-once delivery. Flink savepoints. RocksDB-backed state. No data loss on failure.

→ exactly-once
— Core capabilities

Purpose-built for speed, flexibility, and operational control.

Six capabilities that separate Stream Crunch from a rolled-your-own Kafka/Flink stack — and from off-the-shelf tools that can't keep up with sub-second windows.

// 01

Sub-second latency

Events processed in under 500 ms end-to-end, from ingestion to action. Measured P95, not vendor-speak.

// 02

Dynamic rule engine

Create, test, and deploy rules without code. Changes apply in real-time. No restarts. No deployment freeze.

// 03

No-code aggregations

Build windowed aggregations and computed fields through a self-service UI — counts, sums, averages, anything.

// 04

Configurable windowing

Tumbling, sliding, and session windows per aggregation. Dynamically adjustable as the threat model evolves.

// 05

Stateful processing

Per-user state maintained in RocksDB with Flink checkpointing for fault tolerance. Memory-optimised for high cardinality.

// 06

Event-driven actions

Automated alerts, blocks, and workflow triggers the moment conditions are met. Sink to any topic, any system.

— Platform architecture

Built on Kafka and Flink. Abstracted for simplicity.

// 01

Source streams

Kafka topics with AVRO serialisation

topic: txn_events_v3
schema: avro/v3.1
group: sc-consumer-pri
// 02

Basic fields

Extracted source fields for processing

amount, currency,
user_id, device_id,
geo_lat, geo_lng, ts
// 03

Computed fields

Aggregations and transformations

txn_count_5m,
amount_sum_1h,
geo_jump_score
// 04

Rule engine

Boolean and math operators on fields

if (amount > 5000
  && geo_jump > .8)
  → BLOCK
// 05

Sink topics

Results to one or more output topics

topic: actions_v2
topic: alerts_pri
topic: audit_stream

Kafka integration

Create and update topics with AVRO serialisation. Consumer groups managed automatically.

Flink processing

Stateful stream processing with exactly-once semantics. Checkpointing for fault tolerance.

Dynamic config

Aggregation and stream configuration applied in real-time. No Flink job restarts required.

State management

RocksDB-backed state with automatic compaction. Memory-optimised for high cardinality.

Recovery

Full recoverability using Flink savepoints and checkpoints. Zero data loss on failures.

Observability

System metrics, processing lag, throughput monitoring, and alerting built in.

— Core concepts

The building blocks of Stream Crunch.

01

Streams

Platform-specific streams associated with a Kafka topic and schema. Each stream contains configured basic and computed fields. Streams are the entry point for all processing.

stream: txn_events └─ topic: txn_events_v3 └─ schema: avro └─ fields: 12
02

Basic fields

Source fields extracted from incoming event data. The raw inputs used to build computed fields, apply filters, and feed into rules. Defined per stream.

amount : decimal user_id : string device_id : string geo_lat : double ts : timestamp
03

Computed fields

Aggregated values derived from basic fields using configurable windows. Apply filters, transformations, and mathematical operations. Updated continuously as events arrive.

txn_count_5m └─ window: tumbling 5m └─ filter: status=ok └─ agg: COUNT(*)
04

Rules

Trigger conditions built using complex Boolean and Math operators on both basic and computed fields. When conditions are met, actions fire immediately. No code required.

rule: high_velocity when amount > 5000 AND txn_count_5m > 3 then publish(actions_v2, BLOCK)
— How it works

From raw event to automated action in under 500 ms.

1

Event arrives on Kafka topic

Transaction, login, or any business event lands in a configured source stream.

// t+0 ms
2

Basic fields extracted

The platform deserialises the AVRO payload and extracts configured source fields.

// t+~12 ms
3

Computed fields evaluated

Windowed aggregations run: counts, sums, averages over configurable time windows. State pulled from RocksDB.

// t+~80 ms
4

Rules evaluated

Boolean and math expressions fire against basic + computed field values. Multiple rules run in parallel.

// t+~210 ms
5

Action triggered

Matched rules publish events to sink topics for downstream consumption — block, alert, step-up auth, anything.

// t+~412 ms · done
— Why Stream Crunch

What makes it different.

Traditional approach
Stream Crunch
Rule changes
Code + deploy + restart
UI config, live in seconds
Aggregations
Custom Flink/Kafka code
No-code, configurable windows
New streams
Weeks of engineering
Self-service in minutes
Recovery
Manual intervention
Auto-recovery via checkpoints
Expertise needed
Kafka + Flink specialists
Business analysts can operate
Time to value
Months
Days to weeks
— Use cases

Stream Crunch across industries.

Fintech · flagship

Real-time fraud detection

Identify suspicious activity in real time. Trigger instant holds, alerts, and step-up authentication before losses occur. Detection windows shrink from hours to milliseconds.

BLOCKSTEP_UP_AUTHALERT_OPSHOLD_PAYMENT
All industries

Operational monitoring

Track system and business events continuously. Detect anomalies, SLA breaches, and performance issues as they happen.

Retail

Customer intelligence

Personalise experiences instantly based on live user behaviour, session patterns, and interaction signals.

Finance

Compliance & risk

Monitor transactions against regulatory rules and thresholds. Real-time FICA, sanctions, and PEP screening — at the moment of transaction, not the morning after.

Data

Real-time enrichment

Apply transformations and lookups on streaming data to power downstream processes with richer context. Replace overnight ETL with continuous flow.

Ops

Alerting & automation

Drive workflow automation from live event patterns. Replace polling and batch jobs with event-driven triggers that fire on the signal, not the schedule.

— Get started

See Stream Crunch run on your data.

30-minute walkthrough. We map your event sources, scope a real-time use case, and show you how fast a first rule can ship in production. No slideware — a working demo.