通过Kafka紧凑主题实现GDPR合规性

问题描述

我想问您一些关于apache kafka和紧凑主题的问题。我们想提供一些关于Kafka压缩主题的PII数据。我们要通过逻辑删除删除有关此主题的数据。当前有多个问题需要我们验证假设:

  1. 是否有其他公司通过像KIP-354提出的https://cwiki.apache.org/confluence/display/KAFKA/KIP-354%3A+Add+a+Maximum+Log+Compaction+Lag这样的墓碑生成主题来满足kafka中的gdpr要求(忘记权利)?
  2. 我们的假设是正确的,仅当记录不在活动段文件中时才触发压缩。因此,从我们的角度来看,需要通过将其添加到kafka文档第4.8点来修改kafka文档:该主题的max.compaction.lag.ms可用于确保消息写入之间的最大延迟。 在此处应添加条件,即我们要压缩的消息不应位于活动段文件中。这是max.compaction.lag.ms功能的错误还是设计上的错误?我们目前不确定。
  3. 是否仅在插入新消息后才触发压缩?还是还有一个异步过程可以压缩非活动段文件?

感谢您的回答;-)

解决方法

您的观点很准确。

  1. 压缩的Kafka主题中的消息删除与删除数据库中的行大致相同。发送逻辑删除消息后,不会立即发生这种情况。
  2. 是的,活动日志段未压缩。如果要加快此特定主题的压缩过程(以满足点1),可以减小最大段大小(segment.bytes,默认为1GB)和最大段MS(segment.ms,默认为604800000 = 1周)到较低的值,例如100MB和1。您应该查看min.cleanable.dirty.ratio并将其设置为更具侵略性的值,再次取决于要求(第1点)。
  3. 压缩是异步发生的,无论是否在逻辑删除之后发送任何消息都无关紧要。每个Kafka代理,LogCleaner上都有一个组件负责运行。

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...