Closed
Description
Two proposals (assuming we don't deprecate this datastore soon):
- Handle base32 encoding internally. Forcing the client to deal with filesystem name restrictions is painful and unnecessary.
- Shard using a non-cryptographic hash function. We could, e.g., use SipHash (at most 50ns per hash versus 4000ns to open a file). Again, we shouldn't be making assumptions about keys specified by the user.
This way, we'd map key
to Base32(FastHash(key))[:2] + "/" + Base32(key)
.