RDMA Pointer Sharing for Key-Value Store Performance

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing key-value store systems face performance bottlenecks due to CPU interruptions during network protocol processing, limiting scalability and efficiency in accessing large datasets across multiple clients.

Innovation Solution

Implementing a shared remote DMA (RDMA) pointer system that allows multiple clients to access a key-value store without interrupting the CPU, by mapping RDMA pointers to a shared memory region and storing them in a cache for efficient reuse.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If general purpose network protocol processing is used for client access to key-value store, then network communication is enabled, but CPU processing overhead increases and performance is bottlenecked

Engineering Contradiction:
Improvenetwork communication capabilityVSAvoidkey-value store performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent extracts the network protocol processing function from the CPU by using RDMA (Remote Direct Memory Access) technology. The RDMA pointers enable direct memory access between clients and the key-value store without CPU intervention, thereby removing the processing overhead from the CPU while maintaining network communication capability.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent introduces RDMA pointers as an intermediary mechanism between clients and the key-value store. These pointers act as mediators that enable direct memory access and data transfer without requiring CPU processing, thus resolving the contradiction between network communication and performance.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Speed

If RDMA pointers are cached in shared memory region, then access speed to key-value store improves, but memory usage increases

Engineering Contradiction:
Improveaccess speedVSAvoidmemory usage
Core Design Contradiction:
SpeedVSQuantity of substance

Solution Approach 1:

The patent applies local quality by creating a dedicated shared memory region specifically for caching RDMA pointers. This localized cache stores frequently accessed pointer information, enabling fast access while containing the memory overhead to a specific, manageable region rather than increasing overall system memory usage indiscriminately.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS10083193B2Efficient remote pointer sharing for enhanced access to key-value stores
Publication Date: 2018.09.25 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US10083193B2 patent drawing
  • US10083193B2 patent drawing
  • US10083193B2 patent drawing

AI summary

A method to share remote DMA (RDMA) pointers to a key-value store among a plurality of clients. The method allocates a shared memory and accesses the key-value store with a key from a client and receives an information from the key-value store. The method further generates a RDMA pointer from the information, maps the key to a location in the shared memory, and generates a RDMA pointer record at the location. The method further stores the RDMA pointer and the key in the RDMA pointer record and shares the RDMA pointer record among the plurality of clients.