https://kafka.apache.org/documentation/Name: cleanup.policy
Description: A string that is either "delete" or "compact". This string designates the retention policy to use on old log segments. The default policy ("delete") will discard old segments when their retention time or size limit has been reached.
???
How is this not automatic deletion of stuff? I don't have to worry about someone setting a "delete all data older and/or bigger than Y or Z" flag on a RDBMS, because such a flag doesn't exist.
---
EDIT: Since my other post got a few downvotes, and my account has been sanctioned in the past for posting similar thoughts about tech-hipsters diving head-first into Kubernetes without understanding any of the effects of doing so, I can no longer post replies for a period of some hours.
As such, I will copy my reply to child comment from snuxoll below, which I was not allowed to post, and then log out for a while.
Kafka devs, seek investment from YC, you may get them to sanction accounts that are too critical of the inappropriate adoption of your project, as they've done to me for criticizing Docker/k8s.
reply:
>Log compaction is generally what you want, which will preserve the most recent message for every key in a topic. Event streams expanding boundlessly is something very few will ever need or want, so you'll toss messages into an "event" topic of some kind, apply the event to the most recent entry in the "model" topic and store a new version (which will be kept after log compaction, the original messages can be pruned after you need to free up storage).
Yeah, I didn't explicitly detail the compaction option because it's still potentially deleting huge amounts of data. It promises to keep the latest state, which, yes, is better than deleting everything. But why not just not delete anything? The article says they're working with 100GB of data. There are VIDEO GAMES that get downloaded to consumer hard disks that occupy more than that (also not really excusably, but still).
I understand why Kafka provides these semantics and I think it's great that they do. The issue is that developers choose to ignore them, and seriously imperil their data's well-being by doing so.