That sounds great if your messages in the logs are the complete state for that key, but I'm not seeing how to use that compaction system if the messages are change events.
Is there a system designed for snapshotting the aggregate and logging the delta?
It's easy to store messages in HDFS or S3 for long-term storage. It's also easy to replay messages from those mediums, if you need to re-ingest data later on.
Is there a system designed for snapshotting the aggregate and logging the delta?