IP Library › Granted Patent US 9,727,524
Granted Patent B2
US 9,727,524 · App. 14/709,600 · Granted Aug 8, 2017

Remote direct memory access (RDMA) optimized high availability for in-memory data storage

Inventors: Muhammad Sohaib Aslam (Ajax, CA); Steve Langridge (Markham, CA); Tiia Salo (Cary, NC)
Assignee: International Business Machines Corporation
G06F15/167G06F3/061G06F3/067G06F3/0655H04L67/10H04L67/1097G06F15/17331H04L61/25
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,727,524
App. No.
14/709,600
Granted
Aug 8, 2017
Kind
B2
Abstract

A method for RDMA optimized high availability for in-memory storing of data includes receiving RDMA key-value store write requests in a network adapter of a primary computing server directed to writing data to an in-memory key-value store of the primary computing server and performing RDMA write operations of the data by the network adapter of the primary computing server responsive to the RDMA key-value store write requests. The method also includes replicating the RDMA key-value store write requests to a network adapter of a secondary computing server, by the network adapter of the primary computing server. Finally, the method includes providing address translation data for the in-memory key-value store of the primary computing server from the network adapter of the primary computing server to the network adapter of the secondary computing server.

Claims (18)

1. A method for remote direct memory access (RDMA) optimized high availability for in-memory storing of data, the method comprising:

receiving RDMA key-value store write requests in a network adapter of a primary computing server directed to writing data to an in-memory key-value store storing associative arrays of data of the primary computing server each associative array including a key associated with a single value;

performing RDMA write operations of the data by the network adapter of the primary computing server responsive to the RDMA key-value store write requests;

replicating the RDMA key-value store write requests to a network adapter of a secondary computing server, by the network adapter of the primary computing server;

providing from the network adapter of the primary computing server to the network adapter of the secondary computing server, address translation data indicating the address in the in-memory key-value store of the primary computing server at which the data is stored;

receiving an RDMA key-value store update request in the network adapter of the primary computing server directed to data stored in the in-memory key-value store of the primary computing server;

performing an RDMA key-value store update operation on the stored data by the network adapter of the primary computing server responsive to the RDMA key-value store update request;

replicating the RDMA key-value store update request to the network adapter of the secondary computing server, by the network adapter of the primary computing server;

translating addressing for the stored data in the in-memory key-value store of the primary computing server to an address in an in-memory key-value store of the secondary computing server utilizing the address translation data; and,

updating the stored data in the in-memory key-value store of the secondary server utilizing the translated addressing.

2. The method of claim 1 , further comprising:

receiving from a requesting client an RDMA key-value store read request in the network adapter of the secondary computing server in respect to data stored in the in-memory key-value store of the primary computing server;

translating an address for the data stored in the in-memory key-value store of the primary computing server to an address in an in-memory key-value store of the secondary computing server utilizing the address translation data;

performing an RDMA key-value store read operation at the translated address; and,

returning by the network adapter of the secondary computing server the data produced by the RDMA key-value store read operation to the requesting client.

3. The method of claim 2 , further comprising:

translating a local address table of the client based upon the address translation data; and,

forwarding all subsequent RDMA key-value store requests for data in the in-memory key-value store of the primary computing server to the network adapter of the secondary computing server utilizing the translated local address table.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 12, 2015
From: ASLAM, MUHAMMAD SOHAIB; LANGRIDGE, STEVE; SALO, TIIA
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 035615/0742 →
Continuity (2)
Continuation 14525207 · Oct 27, 2014
Related Publication 20160117283A1 · Apr 28, 2016