迭代地更改 Kafka Stream SessionWindows 的持续时间
Changing the duration of a Kafka Stream SessionWindows iteratively
假设我有一个带有 SessioWindowing 的 Kafka 流,例如:
windowedBy(SessionWindows.with(inactivity_time).until(aWeek))
是否可以根据以下记录的到达迭代地更改window的不活动时间间隔?
比如我最初用第一条记录定义了我的 inactivity_time=360000
,如果相同键的第二条记录在 inactivity_time/2
之后没有到达,是否可以修改这个值?
不幸的是,内置功能无法做到这一点。
这样做需要您自己实现此自定义功能,例如使用 Kafka Streams 的处理器 API(生成的 Processors/Transformers 然后您可以插入 Kafka Streams 的 DSL)。
假设我有一个带有 SessioWindowing 的 Kafka 流,例如:
windowedBy(SessionWindows.with(inactivity_time).until(aWeek))
是否可以根据以下记录的到达迭代地更改window的不活动时间间隔?
比如我最初用第一条记录定义了我的 inactivity_time=360000
,如果相同键的第二条记录在 inactivity_time/2
之后没有到达,是否可以修改这个值?
不幸的是,内置功能无法做到这一点。
这样做需要您自己实现此自定义功能,例如使用 Kafka Streams 的处理器 API(生成的 Processors/Transformers 然后您可以插入 Kafka Streams 的 DSL)。