Many-Core Key-Value Store Mateusz Berezecki Eitan Frachtenberg Mike Paleczny Kenneth Steele Facebook Facebook Facebook Tilera
[email protected] [email protected] [email protected] [email protected] Abstract—Scaling data centers to handle task-parallel work- This sharing aspect is critical for large-scale web sites, loads requires balancing the cost of hardware, operations, where the sheer data size and number of queries on it far and power. Low-power, low-core-count servers reduce costs in exceed the capacity of any single server. Such large-data one of these dimensions, but may require additional nodes to provide the required quality of service or increase costs by workloads can be I/O intensive and have no obvious access under-utilizing memory and other resources. patterns that would foster prefetching. Caching and sharing We show that the throughput, response time, and power the data among many front-end servers allows system ar- consumption of a high-core-count processor operating at a low chitects to plan for simple, linear scaling, adding more KV clock rate and very low power consumption can perform well stores to the cluster as the data grows. At Facebook, we when compared to a platform using faster but fewer commodity have used this property grow larger and larger clusters, and cores. Specific measurements are made for a key-value store, 3 Memcached, using a variety of systems based on three different scaled Memcached accordingly . processors: the 4-core Intel Xeon L5520, 8-core AMD Opteron But as these clusters grow larger, their associated oper- 6128 HE, and 64-core Tilera TILEPro64.