在kafka主题中删除并添加压缩。该主题中的现有数据将如何处理?

时间:2019-04-15 08:46:36

标签: apache-kafka

如果设置的主题没有compression,并且该主题中已经存在一些数据。 现在,将主题设置为compression,是否将压缩现有数据?

另一个方向是,如果使用compression设置了一个主题,并且该主题中已经存在一些数据,那么是否将现有数据解压缩?

这个问题使数据使用者感到担忧。当主题中的某些数据被压缩而某些数据未被压缩时,这非常混乱,或者经纪人知道那些事件被压缩并且那些事件不在同一主题中,并且将传递正确的数据吗?

如果现有数据与压缩设置不对应,我将通过配置非常短的保留时间来删除现有数据。在没有任何数据的非常干净的主题之前,我将提取数据以确保每个事件都已压缩或未压缩。

1 个答案:

答案 0 :(得分:1)

压缩和未压缩的记录可以共存于一个主题中。相应的压缩类型存储在每个记录(实际上是记录批)中,因此用户知道如何处理此消息。

在代理方,通常不关心是否压缩记录批。假设没有对旧格式的记录进行下变频,则代理始终将批次保留为原样。