JSON here is used for convenience riding on top of existing web infrastructure and for browser clients using web sockets. But on server can store in different format for more efficiency
Discussion
On the other hand, drive storage is super cheap compared to the past so may be more efficient to store as the same format it came in as, and only use RDB or other indexing for lookups
Wouldn't NoSQL be more efficient, once the data set gets much larger?
For storing the nostr events to return yes. But not necessarily for searching unless sticking to the limited filters from NIP-01
Partitioning by field values/ranges, and other stuff like POW score, hashtags referenced, key phrases referenced are better suited for dedicated indexers imho