I am a huge fan of append-only logs as a fundamental architectural principle. The Log [1] should be required reading for any CS undergraduate.
[1]: https://engineering.linkedin.com/distributed-systems/log-wha...
[1]: https://engineering.linkedin.com/distributed-systems/log-wha...
Things like types that encode what events are legal in a log, first class support for data versions, fast file read and writes, etc
If you want to remove something you could add a tombstone record (like Cassandra) and eventually remove the original entry during routine maintenance operations like repacking into a more efficient format, archival into cold storage, TTL handling etc.