Stream processing

Process Kafka streams in SQL or YAML.
Govern them like everything else.

Run Flink SQL and KSML jobs as managed applications on Axual. Your teams build with self-service, and every job keeps the same ownership, access rules and audit trail as your topics.

Rated with a 4.5 from more than
13 G2 reviews

Turn streams into results, inside the platform you already govern

Pick the engine that fits your team

Some teams think in SQL. Others want Kafka Streams without writing Java. Axual runs both, with the same lifecycle, monitoring and governance.

Preview

Flink SQL

For teams that know SQL or already run Apache Flink.

  • Write the transformation in SQL; Axual runs it as a managed job on your registered Flink cluster
  • Auto-generate table definitions from your connected topics
  • Validate SQL and choose a deployment size before you deploy
  • View JobManager logs for the current or most recent run
Explore Flink SQL docs
Generally available

KSML

For teams that want Kafka Streams in YAML, with logic in Python.

  • Define filters, transformations, joins and aggregations declaratively
  • No Java, no build pipelines
  • Generate realistic test data and test locally
  • Deploy straight to Axual through the Runtime Provisioner
Explore KSML
Flink SQL 
KSML
You write
SQL
YAML + Python
Runs on
Your registered Flink cluster
Kubernetes, via Axual
Best for
SQL-first teams, existing Flink users
Kafka Streams use cases without Java
Status
Preview (GA this quarter)
Generally available

From topic to running job in four steps

1

Register your runtime

Tenant admins register a Flink cluster against an instance once. KSML runs on the Kubernetes cluster Axual already manages.

2

Write the logic

Write Flink SQL with tables generated from your topics, or define a KSML pipeline in YAML.

3

Deploy through self-service

Validate, pick a deployment size and deploy. Access to every topic the job touches goes through the usual approvals.

4

Run and monitor

Track live status, CPU and memory from the application card. Start, stop, resume or reset the job, and read its logs in the same place.

Kafka moves the data. Axual governs what you do with it.

Stream processing is where data gets combined, enriched and sent somewhere new. That makes it the riskiest place to lose track of ownership. On Axual, a processing job is an application like any other. It has an owner, it needs approved access to every topic it reads and writes, and every change lands in the audit trail.

  • Every job has an owner group
  • Topic access is requested and approved per job
  • Environments (dev, staging, production) are enforced
  • Full audit trail on every create, update and deploy
  • Credentials stored in Vault or a comparable secrets store
Built for Europe’s most regulated sectors
A stream processing job with an owner, environment and Vault credentials, reading approved topics, writing fraud alerts, and logging each step in an audit trail.

Deploy from the UI, Terraform or your AI agent

Every path goes through the same governed API, so it doesn’t matter how a job gets deployed.

Self-Service UI

Write, validate and deploy from the browser. Auto-generate tables from your topics with one click.

Terraform

Register Flink clusters with axual_flink_cluster and deploy FLINK_SQL applications alongside the rest of your infrastructure. Sign in with a service account, not a personal login.

MCP

Ask your AI agent to write and deploy a Flink SQL job or generate a KSML pipeline. It works with your permissions and nothing more.

Explore MCP
Axual running on European cloud infrastructure under customer control

Process data where your policies require

Run stream processing on-premises on Kubernetes or OpenShift, or managed on Axual Cloud in an EU sovereign cloud. Your data stays where your compliance rules say it should.

Stream processing for regulated industries

Financial services

Flag suspicious payments as they happen. Join transactions with account data and route high-risk events to fraud teams in seconds.

Read more

Energy

Aggregate grid telemetry into usable signals. Turn raw meter and sensor readings into per-minute load figures for balancing and trading.

Read more

Government

Share only what each agency needs. Filter and mask events before they cross organizational boundaries, with every flow logged.

Read more

Frequently asked questions

Does Axual support Apache Flink?

Yes. Since release 2026.3, you can run Flink SQL applications directly on Axual. You write the SQL, and Axual deploys it as a managed job on a Flink cluster your tenant has registered. Flink SQL is in preview, with production readiness planned for an upcoming release.

Do I need to run my own Flink cluster?

Yes, for now. Tenant admins register an existing Flink cluster against an instance, and Axual deploys jobs to it.

Should I use Flink SQL or KSML?

Use Flink SQL if your team knows SQL or already runs Flink. Use KSML if you want Kafka Streams pipelines in YAML and Python, without running extra infrastructure. Both are managed and governed the same way.

Do I need to write Flink table definitions by hand?

No. Axual generates them from your connected topics. You can still write them yourself if you prefer.

How is a processing job governed?

Like any other application on Axual. It has an owner, needs approved access to the topics it uses, and every action is logged.

See stream processing on Axual

We’ll show you Flink SQL and KSML running on governed Kafka, in your kind of environment.