TY - JOUR
T1 - KBF
T2 - Towards Approximate and Bloom Filter based Key-Value Storage for Cloud Computing Systems
AU - Xiong, Sisi
AU - Yao, Yanjun
AU - Li, Shuangjiang
AU - Cao, Qing
AU - He, Tian
AU - Qi, Hairong
AU - Tolbert, Leon
AU - Liu, Yilu
N1 - Funding Information:
This work was supported in part by the National Science Foundation grant CNS-0953238, CNS-1017156, CNS-1117384, and CNS-1239478.
Publisher Copyright:
© 2013 IEEE.
PY - 2017/1/1
Y1 - 2017/1/1
N2 - As one of the most popular cloud services, data storage has attracted great attention in recent research efforts. Key-value (k-v) stores have emerged as a popular option for storing and querying billions of key-value pairs. So far, existing methods have been deterministic. Providing such accuracy, however, comes at the cost of memory and CPU time. In contrast, we present an approximate k-v storage for cloud-based systems that is more compact than existing methods. The tradeoff is that it may, theoretically, return errors. Its design is based on the probabilistic data structure called 'bloom filter', where we extend the classical bloom filter to support key-value operations. We call the resulting design as the kBF (key-value bloom filter). We further develop a distributed version of the kBF (d-kBF) for the unique requirements of cloud computing platforms, where multiple servers cooperate to handle a large volume of queries in a load-balancing manner. Finally, we apply the kBF to a practical problem of implementing a state machine to demonstrate how the kBF can be used as a building block for more complicated software infrastructures.
AB - As one of the most popular cloud services, data storage has attracted great attention in recent research efforts. Key-value (k-v) stores have emerged as a popular option for storing and querying billions of key-value pairs. So far, existing methods have been deterministic. Providing such accuracy, however, comes at the cost of memory and CPU time. In contrast, we present an approximate k-v storage for cloud-based systems that is more compact than existing methods. The tradeoff is that it may, theoretically, return errors. Its design is based on the probabilistic data structure called 'bloom filter', where we extend the classical bloom filter to support key-value operations. We call the resulting design as the kBF (key-value bloom filter). We further develop a distributed version of the kBF (d-kBF) for the unique requirements of cloud computing platforms, where multiple servers cooperate to handle a large volume of queries in a load-balancing manner. Finally, we apply the kBF to a practical problem of implementing a state machine to demonstrate how the kBF can be used as a building block for more complicated software infrastructures.
KW - Bloom filter
KW - key-value storage
UR - http://www.scopus.com/inward/record.url?scp=85027543972&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=85027543972&partnerID=8YFLogxK
U2 - 10.1109/TCC.2014.2385063
DO - 10.1109/TCC.2014.2385063
M3 - Article
AN - SCOPUS:85027543972
SN - 2168-7161
VL - 5
SP - 85
EP - 98
JO - IEEE Transactions on Cloud Computing
JF - IEEE Transactions on Cloud Computing
IS - 1
ER -