Slide 63
Slide 63 text
@jeqo89 | #codeone
var b = new StreamsBuilder();
b.stream(spansTopic, ...).groupByKey()
// how long to wait for another span
.windowedBy(SessionWindows.with(timeout)...)
.aggregate(ArrayList::new, aggregateSpans(),
joinAggregates(), ...)
// hold until a new record tells that a window is closed
and we can process it further
.suppress(untilWindowCloses(unbounded()))
.toStream()