The Streaming Data Engine for Killer Applications | Eventador

The Streaming Data Engine for Killer Applications and Analytics

Use Continuous SQL to materialize data with durable REST data APIs for real-time analytics, ETL, data science, and streaming application development.

Check out the latest episode of Eventador Streams:

A podcast about all things streaming data

Streaming Applications Need Queryable State.
Introducing Materialized Views on Streams.


01

Connect to Kafka topics, and define schemas

Easily connect to Kafka clusters including Confluent Cloud, AWS MSK, or your own self-managed Kafka. Automatically detect and define schemas for your JSON or AVRO topics. Build input transformations to normalize messy data or foreign data sources.

Alternative Text

02

Build and deploy jobs using Continuous SQL

Define and run stream processing jobs using ANSI standard SQL for streaming ETL, for filtering and joining for Machine Learning models, or for aggregating data for real-time dashboards.

Alternative Text

03

Define Materialized Views on streams

Create a view of the current state of the data for easy consumption in your applications, configure maintenance policies, job restart strategies and more. Data is fully indexed and storage is automatically managed.

Alternative Text

04

Query Materialized Views via RESTful endpoints

Create multiple RESTful endpoints to query materialized views by any column, define range scans, or pass in parameters. Creating dashboards, maps, and using data in notebooks has never been easier.

Alternative Text

Get Started By Selecting Your Cloud Provider

Built on Apache Kafka, Apache Flink and Kubernetes
Streaming data is core to our business. Eventador SQLStreamBuilder gave us the capability to ingest complicated feeds at massive scale and perform production-quality, continuous SQL jobs against them. This was something other competitors just couldn’t achieve—and it’s a complete game-changer for us.

Chris Ferraro, CTO and VP of Engineering

Build Entire Streaming Pipelines Using Continuous SQL

Real-time Fraud & Anomaly Detection

-- production fraud and alerting job
SELECT *
FROM paymentauths
MATCH_RECOGNIZE(
PARTITION BY card
ORDER BY eventTimestamp
MEASURES
F.amount AS first_amount,
E.amount AS last_amount
ONE ROW PER MATCH
AFTER MATCH SKIP PAST LAST ROW
PATTERN (F+ E) -- match 1 or more rows
DEFINE
F AS F.amount IS NOT NULL AND F.amount > 10, -- lower boundary
E AS E.amount IS NOT NULL AND F.amount < E.amount) -- starting value less than ending value

Real-time ETL

-- detect multiple auths in a short window and
-- send to lock account topic/microservice
SELECT card,
MAX(amount) as theamount,
TUMBLE_END(eventTimestamp, interval '5' minute) as ts
FROM payments
WHERE lat IS NOT NULL
AND lon IS NOT NULL
GROUP BY card, TUMBLE(eventTimestamp, interval '5' minute)
HAVING COUNT(*) > 4 -- >4==fraud
view raw Aggregations.sql hosted with ❤ by GitHub

IoT

-- production IoT application job
-- display range remaining every 15 seconds
SELECT boardid,
tumble_end(eventTimestamp, interval '15' second) as TS,
CAST(ROUND(MIN(CAST(battery_level as numeric)),2) AS varchar)||'%' as state_of_charge,
MIN(CAST(trip_distance AS numeric)) AS distance_covered,
100-MIN(CAST(battery_level as numeric)) AS battery_pct_used,
MIN(CAST(trip_distance AS numeric))/(100-MIN(CAST(battery_level as numeric))) AS foot_per_battery_pct,
MIN(CAST(battery_level as numeric))*(MIN(CAST(trip_distance AS numeric))/(100-MIN(CAST(battery_level as numeric)))) as range_in_feet
FROM kickflips
GROUP by boardid, tumble(eventTimestamp, interval '15' second)
view raw IoT Applications.sql hosted with ❤ by GitHub

Customer Experience

-- union two different virtual tables
SELECT * FROM clickstream
WHERE useragent = 'Chrome/62.0.3202.84 Mobile Safari/537.36'
UNION ALL
SELECT * FROM clickstream
WHERE useragent = 'Version/4.0 Chrome/58.0.3029.83 Mobile Safari/537.36'
view raw UnionALL.sql hosted with ❤ by GitHub

The Eventador Platform

The Eventador Platform eliminates the barriers between streaming data and applications by broadening the ability of organizations to unlock value and drive innovation.

Alternative Text

The SQLStreamBuilder Continuous SQL Engine

The Eventador Platform’s SQLStreamBuilder enables you to continuously perform SQL on streams of data upstream of any database for massive performance and cost advantages.

Learn More

The Fully Managed Runtime for Apache Flink

Whether you want to use SQL, Java, Scala or a combination of the three, the Eventador Platform’s Runtime for Apache Flink enables you to manage all your Flink jobs in a single place, while giving you robust team management and reporting features for a truly enterprise-grade streaming system.

Learn More

Alternative Text

Ready to boost what you can do with streaming data?

Already using the Eventador Platform? Sign in