Addressing

Some possibilities

Sequential and Structured

application (16 bit)

table (16 bit)

address (64 bit)

Random

Distribution

Effects

Evaluation

Questions

Approaches

Mapping/Address Space Paritioning

RAMCloud Address -> Metadata as quickly as possible (e.g. with as few requests and as little processing as possible) where metadata includes physical address, size, and permissions at least.

Ideal: 0 network messages and O(1) address to host mapping time with high probability

Implies all clients are aware of mapping.

Possibly only update mapping on lookup failures. Requests to incorrect host reply with mapping correction.

Complication: access-control requires highly-consistent mapping replication if control is on addresses (e.g. the application/table is part of the structured address).

Objects (likely as whole shards) may need to relocate due failures, load, or capacity.

Fixed Number of Objects per Shard

Assuming 64 bit addrs, 32 bit host addrs, 4 replicas

log_2 # shards

log_2 # addrs/shard

index size

30

34

16GB

40

24

16TB

DHT

Allows variable/fixed address space shards and/or variable/fixed space shards

B-Trees

Replication

Effects

Evaluation

Locality

Effects

Evaluation