RDMA Cache-Friendly In-Memory Hash Index Queries
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing database server systems face inefficiencies in data retrieval, particularly when the database server instance fails, leading to unavailability of data in volatile memory and increased workload, which hampers client applications' ability to access data efficiently.
Innovation Solution
Implementing Remote Direct Memory Access (RDMA) techniques that allow a requesting entity to directly access and retrieve data from the volatile memory of a server machine without involving the database server instance, using RDMA to obtain target location information and subsequently retrieve the data, thereby bypassing the need for CPU interruption or OS kernel involvement.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If client applications send requests to the database server instance to retrieve data from volatile memory, then data access is enabled, but the system becomes inefficient and unavailable when the database server instance fails
Solution Approach 1:
The patent extracts the data retrieval function from the database server instance by enabling client applications to directly access volatile memory through RDMA. This separates the data storage function (in volatile memory) from the data retrieval function, allowing clients to bypass the database server instance for direct memory access while maintaining data availability even when the server instance fails.
Solution Approach 2:
The patent introduces RDMA (Remote Direct Memory Access) as an intermediary mechanism that enables direct communication between client applications and the server's volatile memory without involving the database server instance or CPU. This intermediary layer allows efficient data retrieval while reducing the workload on the database server instance.
2Ease of operation
If the database server instance processes all data retrieval requests, then data access control is maintained, but the workload on the server increases and response time decreases
Solution Approach 1:
The patent segments the data retrieval process into two parts: (1) control functions that remain with the database server instance, and (2) actual data retrieval operations that are performed directly by client applications through RDMA. This segmentation reduces the server's workload and response time while maintaining access control through the server's authorization mechanisms.
Solution Approach 2:
The patent implements preliminary action by having the database server instance pre-allocate and prepare volatile memory regions for RDMA access before client applications need the data. This includes setting up memory regions, registering memory addresses, and configuring RDMA access parameters in advance, so that when clients need data, they can immediately access it without waiting for server processing.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
Techniques are provided for enabling a requesting entity to retrieve data that is managed by a database server instance from the volatile memory of a server machine that is executing the database server instance. The techniques allow the requesting entity to retrieve the data from the volatile memory of the host server machine without involving the database server instance in the retrieval operation. Because the retrieval does not involve the database server instance, the retrieval may succeed even when the database server instance has stalled or become unresponsive. In addition, direct retrieval of data using the techniques described herein will often be faster and more efficient than retrieval of the same information through conventional interaction with the database server instance.