Join Nostr
2026-10-07 01:28:04 UTC

rakoo on Nostr: Thanks for the design discussion 😅 > vacuum You're right. I suspect this issue ...

Thanks for the design discussion 😅

> vacuum

You're right. I suspect this issue will arise because blobs take most of the space, so here's an idea: create separate databases for blobs, one for each first byte, so that they can all be vacuumed safely. Your 6 TB database becomes 1 database for meta stuff (I suspect less than 10 GB) and 256 databases for blobs, each statistically around 6*1024/256 = 24 GB. Way more tractable. Deletions happen in the meta db, blobs dbs lag behing and canbe garbage collected asynchronously.

> blob interface, base64

My point is that stringy key-values are stored directly in the database, and blobs are blobs whose content are irrelevant to processing. You shouldn't need to read a blob, decipher it, read the first line-oh but actually it's crlf not cr and all that crap to function. sqlite provides the structure. blobs contain files content and nothing else.

> configurable batching of chunk transactions

sqlite has that