Session window 如何计算差距?

Session window how calculate gap?

我试图理解 window 会话的这个 shema:

我猜对了,我们有四个事件:

  1. 12:00:00 - 活动在这个时间开始

  2. 12:00:25 - 另一个活动已结束

  3. 12:00:30 - 活动在这个时间开始

  4. 12:00:50 - 另一个活动已结束

我们如何获得 15 秒的间隔?

你能解释一下什么是 start/end - 是一个事件还是两个不同的事件?

事件没有开始或结束时间,只有一个标量事件时间戳。

如果使用sessionwindows,时间差小于gap参数的events,属于同一个window.

因此,会话的开始和结束window 总是对应于一个事件。

请注意,会话 windows 不适用于输入流中有专用 start/end 事件的情况。将会话 windows 更像是“会话检测”场景,即您的输入流中没有会话,并且希望根据记录时间戳对输入数据进行会话化处理。

查看文档了解更多详情:https://docs.confluent.io/current/streams/developer-guide/dsl-api.html#session-windows