Cloud deployments disaggregate storage from compute, providing more flexibility to both the storage and compute layers. In this paper, we explore disaggregation by taking it one step further and applying it to memory (DRAM). Disaggregated memory uses network attached DRAM as a way to decouple memory from CPU. In the context of databases, such a design offers significant advantages in terms of making a larger memory capacity available as a central pool to a collection of smaller processing nodes. To explore these possibilities, we have implemented Farview, a disaggregated memory solution for databases, operating as a remote buffer cache with operator offloading capabilities. Farview is implemented as an FPGA-based smart NIC making DRAM available as a disaggregated, network attached memory module capable of performing data processing at line rate over data streams to/from disaggregated memory. Farview supports query offloading using operators such as selection, projection, aggregation, regular expression matching and encryption. In this paper we focus on analytical queries and demonstrate the viability of the idea through an extensive experimental evaluation of Farview under different workloads. Farview is competitive with a local buffer cache solution for all the workloads and outperforms it in a number of cases, proving that a smart disaggregated memory can be a viable alternative for databases deployed in cloud environments.
翻译:云层部署从计算中分离存储, 使存储层和计算层具有更大的灵活性。 在本文中, 我们探索分类方法, 将其再向前一步, 并将其应用到记忆( DRAM) 。 分散的内存使用网络连接 DRAM, 以此将内存与CPU分离。 在数据库中, 这样的设计在将更大的内存能力作为中央库, 用于收集较小的处理节点方面有很大的优势。 为了探索这些可能性, 我们实施了Farview, 一个数据库的分类内存解决方案, 作为远程缓冲缓冲缓冲缓存, 与操作者一起运行。 Farview是一个基于 FPGA的智能NIC, 将DRAM作为分解的、 网络附加的内存模块, 能够以线速率处理数据流到/ 从分类的内存中。 Farview支持使用操作者, 如选择、 预测、 汇总、 定期表达匹配和加密等进行查询。 在本文中, 我们侧重于分析查询, 并通过不同工作量下的广泛实验性评估 Farview 来显示想法的可行性。 Farview 。 Farview 具有竞争力, 与当地缓冲缓冲缓冲缓冲缓冲解决方案解决方案的解决方案, 具有竞争力, 在所有可选择的缓冲缓冲缓冲解决方案, 在智能数据库中展示中可以证明一个可选择的云中, 。