mleku on Nostr: it has a separate key log which means you can iterate keys independently and ...
it has a separate key log which means you can iterate keys independently and add/change them without impacting the value log, which is where you get "write amplification" which has to do with the fact that the value tables are much bigger and cost more to restructure and append to
this makes it much more viable to build powerful search indexes by simply using the keys, which is exactly how the badger eventstore that fiatjaf wrote works to implement filter searches, there is like 8 different kinds of keys that let you match fast to authors, timestamps, and so forth, as well as a scheme to add a key for each tag in an event
implementing fast range searches with badger would be much easier to do and not have problems with large data sets due to this feature
this makes it much more viable to build powerful search indexes by simply using the keys, which is exactly how the badger eventstore that fiatjaf wrote works to implement filter searches, there is like 8 different kinds of keys that let you match fast to authors, timestamps, and so forth, as well as a scheme to add a key for each tag in an event
implementing fast range searches with badger would be much easier to do and not have problems with large data sets due to this feature