Disaggregated memory separates compute and storage nodes into two independent pools, connected via RDMA or CXL links. Disaggregated memory improves resource utilization, saves cost overhead, and ensures elastic scalability of memory and compute resources. Tree indexes are essential guarantees in storage systems, such as databases or key-value storage. Existing disaggregated memory systems suffer from poor write performance, mainly due to concurrency conflicts, frequent Structure Modification Operation (SMO) operations, and high lock overhead on tree index. To solve the problem, we propose GECKO, a write-optimized Adaptive Radix Tree index structure for disaggregated memory. We leverage 1) a write-optimized buffer node to handle concurrent writes, improving write performance, 2) a threshold-based splitting strategy to reduce splits and optimize SMO operations, 3) a post-insertion lock design to reduce lock overhead and reduce insertion tail latency. We compare GECKO with state-of-the-art solutions. Experiments show that GECKO improves throughput by 1.43 \(\times \) –3.21 \(\times \) under write workloads. Additionally, it reduces SMO operation time by 88.5% and decreases lock time by 87.9%.

错误:搜索内容不能为空,请输入英文关键词
错误:关键词超出字数限制,请精简
高级检索

GECKO: A Write-Optimized Adaptive Radix Tree for Disaggregated Memory

  • Tianyu Wan,
  • Shijia Gong,
  • Yangyang Hu,
  • Jianxi Chen

摘要

Disaggregated memory separates compute and storage nodes into two independent pools, connected via RDMA or CXL links. Disaggregated memory improves resource utilization, saves cost overhead, and ensures elastic scalability of memory and compute resources. Tree indexes are essential guarantees in storage systems, such as databases or key-value storage. Existing disaggregated memory systems suffer from poor write performance, mainly due to concurrency conflicts, frequent Structure Modification Operation (SMO) operations, and high lock overhead on tree index. To solve the problem, we propose GECKO, a write-optimized Adaptive Radix Tree index structure for disaggregated memory. We leverage 1) a write-optimized buffer node to handle concurrent writes, improving write performance, 2) a threshold-based splitting strategy to reduce splits and optimize SMO operations, 3) a post-insertion lock design to reduce lock overhead and reduce insertion tail latency. We compare GECKO with state-of-the-art solutions. Experiments show that GECKO improves throughput by 1.43 \(\times \) –3.21 \(\times \) under write workloads. Additionally, it reduces SMO operation time by 88.5% and decreases lock time by 87.9%.