假设我有KTable跟踪位置数据(例如:{'Susan': 'Paris'}
),并使用该表的toStream
方法实现了变更日志流。
我知道,如果要通过更改键Susan
(例如:Berlin
)来更新表,那么changelog流将发出一个新事件{'Susan': 'Berlin'}
。但是,如果更新后的值与上一个值相同怎么办?例如,在聚合操作期间,我们第二次将Susan
设置为Berlin
。
变更日志是否会发出第二个{'Susan': 'Berlin'}
事件,还是仅当新旧值之间存在差异时才将新事件添加到变更日志流中?
答案 0 :(得分:3)
总是发出更新。没有检查可以将新旧值进行比较,而是假设新值与旧值不同,因此每次都会发出该值。