...
/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.
We'll cover the following...
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)
andh2(Kg)
and looks inside these buckets.Inside
h1(Kg)
, it looks for the tagh2(Kg)
. If the computed tagh2(Kg)
matches the tag inside bucketh1(Kg)
, then it looks up the entry in the storage log stored on the offset marked withh2(Kg)
.Inside
h2(Kg)
, it looks for the tagh1(Kg)
. If the computed tagh1(Kg)
matches the tag inside bucketh2(Kg)
, then it looks up the entry in the storage log stored on the offset marked withh1(Kg)
.
Upon a
in ...successful match computed tag matches tag in bucket