我想问你一些关于ApacheKafka和压缩主题的问题。我们想提供一些Kafka压缩主题的pii数据。我们想通过tombstone删除这个主题的数据。目前有多个问题需要验证我们的假设:
在Kafka,有没有其他公司能像kip-354那样通过一个紧凑的主题和墓碑生成来满足gdpr的要求(忘记的权利)https://cwiki.apache.org/confluence/display/kafka/kip-354%3a+add+a+maximum+log+compaction+lag?
我们的假设正确吗?只有当记录不在活动段文件中时才会触发压缩。因此,在我们看来,需要修改kafka文档,将其添加到kafka文档第4.8点中:主题的max.compression.lag.ms可用于保证从编写消息到消息符合压缩条件之间的最大延迟。在这里,它应该添加一个条件,即我们要压缩的消息不应该在活动段文件中。这是max.compression.lag.ms特性的一个bug还是按设计的那样?我们现在还不确定。
压缩是否仅在插入新邮件后触发?或者是否还有一个异步进程来压缩非活动段文件?
谢谢你的回答;-)
1条答案
按热度按时间2wnc66cl1#
你说得很对。
压缩kafka主题中的消息删除与删除数据库中的行大致相同。它不会在墓碑信息发送后立即发生。
是,活动日志段未压缩。如果要加快此特定主题的压缩过程(以满足第1点的要求),可以将最大段大小(segment.bytes,默认为1gb)和最大段毫秒(segment.ms,默认为604800000=1周)减小到一些较低的值,例如100mb和1。您应该查看min.cleanable.dirty.ratio并将其设置为更激进的值,这同样取决于要求(第1点)。
压缩是异步进行的,在tombstone之后是否发送了消息并不重要。每个kafka、broker和logcleaner上都有一个组件运行,负责这个。