...
- Smaller ids (64-bit?)
- Not if we want these to look like capabilities
- Simple to make fast
- Not meaningful to client (both a plus and minus)
- Indexing must be done by clients and stored in the cloud
- Akin to FriendFeed's setup
- Content-based
- Can't share objects without references
- Less general
- Potential vulns if hashes have weaknesses (good 128-bit hashes?)
- Built-in de-duplication
- Which also poses storage channel for multi-tenacy
Distribution
Effects
- + Capacity
- Strictly necessary for this reason alone
- + Throughput/Latency
- + Avoid hot spots
- Multiple hosts can service requests in parallel
- Do either of these matter if nodes can handle 1M requests/sec?
- - Throughput/Latency
- Cost to map address -> shard, shard -> host on client
- Cost to map address -> metadata (physical location, size, and permissions)
- - Consistency
- - Reliability
...