And I'll defer to the real architect nostr:nprofile1qqsrhuxx8l9ex335q7he0f09aej04zpazpl0ne2cgukyawd24mayt8gprfmhxue69uhkcmmrdd3x77pwve5kzar2v9nzucm0d5hszxnhwden5te0wpuhyctdd9jzuenfv96x5ctx9e3k7mf0qydhwumn8ghj7un9d3shjtnhv4ehgetjde38gcewvdhk6tc4rdlnm who makes khatru and I just paste stuff
I'll defer to my dude nostr:nprofile1qqsw9n8heusyq0el9f99tveg7r0rhcu9tznatuekxt764m78ymqu36cpr3mhxue69uhhyetvv9ujucnfw33k76twwpshy6ewvdhk6tcpzdmhxue69uhhwmm59e6hg7r09ehkuef0qy2hwumn8ghj7un9d3shjtn4w3ux7tn0dejj7ne6u4e who creates relay software.
Discussion
khatru looks quite interesting, I'll have a look maybe I can plug in the database as an option in there and start contributing to it instead of building a separate relay. Thanks for the pointer!
I defer to this post I wrote in 2015 about CouchDB: nostr:naddr1qqyrswrpvdsnsc3nqyghwumn8ghj7enfv96x5ctx9e3k7mgzyqalp33lewf5vdq847t6te0wvnags0gs0mu72kz8938tn24wlfze6qcyqqq823car67ph
But I don't think CouchDB is good for anything anymore since they got rid of the concept of couchapps instead of fixing it, then turned it into a boring and slow MongoDB copy.
Phasing out couchapps was a bummer indeed, it was what originally got me excited about CouchDB. But regarding querying and performance, they have come a long way, the MongoDB-like queries are as fast as the views and allow you to do things that are indeed cumbersome with views. In my attempt at a NOSTR relay storage, I'm not touching views at all at the moment, it's only these Mango queries.
I find the views API helpful when you want to use the reducer functionality to easily sum/average millions of records.
Recently they added a built-in full-text search engine which is really nice to have to avoid external dependencies.