...

/

A Write-friendly Store for SILT: Part III

A Write-friendly Store for SILT: Part III

Learn how to design a key-value store for fast writing.

GET requests

Since we are using a partial key, it is important to note how this will affect GET requests. We will only proceed with a lookup for a GET request if the tag matches the key in the request. By lookup, we mean lookup in storage. So, when the write-friendly store receives a GET request for key Kg:

  • It computes the candidate buckets h1(Kg) and h2(Kg) and looks inside these buckets.

    • Inside h1(Kg), it looks for the tag h2(Kg). If the computed tag h2(Kg) matches the tag inside bucket h1(Kg), then it looks up the entry in the storage log stored on the offset marked with h2(Kg).

    • Inside h2(Kg), it looks for the tag h1(Kg). If the computed tag h1(Kg) matches the tag inside bucket h2(Kg), then it looks up the entry in the storage log stored on the offset marked with h1(Kg).

  • Upon a successful matchcomputed tag matches tag in bucket in ...