Crate pulse_ops

Crate pulse_ops 

Source
Expand description

pulse-ops: standard operators built on top of pulse-core.

Included operators:

  • Map: one-to-many mapping of JSON payloads
  • Filter: predicate-based filtering
  • KeyBy: materialize a key field from an existing field
  • Aggregate (simplified): per-minute running count updates
  • WindowedAggregate: configurable windows (tumbling/sliding/session) with count/sum/avg/distinct

Re-exports§

pub use time::WatermarkClock;
pub use time::WatermarkPolicy;
pub use window::Window;
pub use window::WindowAssigner;
pub use window::WindowOperator;

Modules§

prelude
time
window

Structs§

Aggregate
Simple aggregate that maintains a per-minute count per key_field. Simple aggregate that maintains a per-minute count per key_field.
Filter
Filter operator: keeps inputs that satisfy the predicate.
FilterFn
KeyBy
KeyBy operator: copies an existing field into a canonical key field.
Map
Map operator: applies a user function that returns zero or more outputs per input. Map operator: applies a user function that returns zero or more outputs per input.
MapFn
WindowTumbling
Fixed-size tumbling window helper (legacy from the simple Aggregate).
WindowedAggregate
A stateful windowed aggregation operator supporting different windows & aggregations. A stateful windowed aggregation operator supporting different windows & aggregations.

Enums§

AggKind
Supported aggregation kinds for WindowedAggregate.
AggregationKind
Supported aggregation kinds for the simple Aggregate.
WindowKind
Kinds of windows supported by WindowedAggregate.

Traits§

FnFilter
FnMap