Replying to Avatar Vitor Pamplona

I just finished a quick Event Store lib for Amethyst on Quartz just to remind myself that

1. SQL is awesome.

2. Nothing beats Amethyst cache speeds.

The db automatically manages addressable events (replaces/deletes old ones in favor of new), supports NIP-05 deletion, NIP-50 full text search, NIP-62 Request to Vanish, NIP 45 counts and NIP-40 event expirations. It indexes all single letter tags and some extra ones per kind.

The goal wasn't to be the fastest, but the one that never gets corrupted or loses data. Current speeds are at 45ms to insert 1000 events (with disk write to not lose it) and 1ms per query and about 25ms to load 1000 heavy GiftWrap events into full Kotlin objects. We could do 10x these speeds if we disable transaction logging. But that would make the DB corruptable.

A little more and we can have our own relay implementation as a lib.

It's still in the outbox branch, but Kotlin devs can play with it already.

https://github.com/vitorpamplona/amethyst/blob/full-outbox/quartz%2Fsrc%2Fmain%2Fjava%2Fcom%2Fvitorpamplona%2Fquartz%2Fnip01Core%2Fstore%2FREADME.md

Avatar
Mî¢h&|3 Dëgli Ü3ę®tį 5mo ago

Way to go!

Reply to this note

Please Login to reply.

Discussion

No replies yet.