A flexible hash table design for 10GBPS key-value stores on FPGAS
A flexible hash table design for 10GBPS key-value stores on FPGAS
复制标题
用于 FPGA 上 10GBPS 键值存储的灵活哈希表设计
DOI:
--
复制
发表时间:
2013
期刊:
影响因子:
--
通讯作者:
K. Vissers
中科院分区:
文献类型:
--
作者:
Z. István;G. Alonso;Michaela Blott;K. Vissers
Common web infrastructure relies on distributed main memory key-value stores to reduce access load on databases, thereby improving both performance and scalability of web sites. As standard cloud servers provide sub-linear scalability and reduced power efficiency to these kinds of scale-out workloads, we have investigated a novel dataflow architecture for key-value stores with the aid of FPGAs which can deliver consistent 10Gbps throughput. In this paper, we present the design of a novel hash table which forms the centre piece of this dataflow architecture. The fully pipelined design can sustain consistent 10Gbps line-rate performance by deploying a concurrent mechanism to handle hash collisions. We address problems such as support for a broad range of key sizes without stalling the pipeline through careful matching of lookup time with packet reception time. Finally, the design is based on a scalable architecture that can be easily parametrized to work with different memory types operating at different access speeds and latencies. We deployed this hash table in a memcached prototype to index 2 million entries in 24GBytes of external DDR3 DRAM while sustaining 13 million requests per second for UDP binary encoded memcached packets which is the maximum packet rate that can be achieved with memcached on a 10Gbps link.