Scale-out ccNUMA: exploiting skew with strongly consistent caching

Scale-out ccNUMA: exploiting skew with strongly consistent caching
复制标题

DOI:
10.1145/3190508.3190550
复制
发表时间:
2018-04
期刊:
Proceedings of the Thirteenth EuroSys Conference
影响因子:
--
通讯作者:
Vasilis Gavrielatos;Antonios Katsarakis;A. Joshi;Nicolai Oswald;Boris Grot;V. Nagarajan
Vasilis Gavrielatos;Antonios Katsarakis;A. Joshi;Nicolai Oswald;Boris Grot;V. Nagarajan
中科院分区:
其他
文献类型:
--
作者:
Vasilis Gavrielatos;Antonios Katsarakis;A. Joshi;Nicolai Oswald;Boris Grot;V. Nagarajan

文献摘要

相似文献

当今基于云的在线服务由分布式键值存储(KVS)支撑。这样的KVS通常使用横向扩展架构,由此数据集跨服务器池进行分区,每个服务器在内存中保存数据集的一个块,并负责为针对该块的查询提供服务。KVS设计必须解决的一个重要性能瓶颈是由倾斜的流行度分布引起的负载不平衡。尽管最近的工作倾斜缓解,现有的方法只提供有限的好处,高吞吐量的内存中的KVS部署。在本文中,我们将流行度偏斜视为一种表现机会。我们的观点是,在KVS的所有节点上积极缓存流行的项目可以实现负载平衡和高吞吐量-这是以前的方法无法实现的组合。我们引入了对称缓存,其中每个服务器节点都配备了一个小型缓存,用于维护数据集中最流行的对象。为了确保缓存之间的一致性,我们使用高吞吐量的全分布式一致性协议。这项工作的一个关键结果是,强一致性保证(每键线性化)不需要牺牲性能。在一个9节点的基于RDMA的机架和适度的写入比率,我们的原型设计,被称为ccKVS,实现了2.2倍的吞吐量的最先进的KVS,同时保证强大的一致性。
Today's cloud based online services are underpinned by distributed key-value stores (KVS). Such KVS typically use a scale-out architecture, whereby the dataset is partitioned across a pool of servers, each holding a chunk of the dataset in memory and being responsible for serving queries against the chunk. One important performance bottleneck that a KVS design must address is the load imbalance caused by skewed popularity distributions. Despite recent work on skew mitigation, existing approaches offer only limited benefit for high-throughput in-memory KVS deployments. In this paper, we embrace popularity skew as a performance opportunity. Our insight is that aggressively caching popular items at all nodes of the KVS enables both load balance and high throughput - a combination that has eluded previous approaches. We introduce symmetric caching, wherein every server node is provisioned with a small cache that maintains the most popular objects in the dataset. To ensure consistency across the caches, we use high-throughput fully-distributed consistency protocols. A key result of this work is that strong consistency guarantees (per-key linearizability) need not compromise on performance. In a 9-node RDMA-based rack and with modest write ratios, our prototype design, dubbed ccKVS, achieves 2.2x the throughput of the state-of-the-art KVS while guaranteeing strong consistency.