IP Library Granted Patent US 10,455,045
Granted Patent B2
US 10,455,045 · App. 15/408,328 · Granted Oct 22, 2019

Automatic data replica manager in distributed caching and data processing systems

Inventors: Zhengyu Yang (Boston, MA); Jiayin Wang (Dorchester, MA); Thomas David Evans (San Marcos, CA)
Assignee: Samsung Electronics Co., Ltd.
H04L67/2842H04L41/0668H04L41/5009H04L41/5022H04L41/5025H04L43/0852H04L43/0888H04L43/16H04L67/1002H04L67/1095
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 10,455,045
App. No.
15/408,328
Granted
Oct 22, 2019
Kind
B2
Abstract

A method of data storage includes determining a latency distance from a primary node to each of two or more replica nodes, choosing a preferred replica node of the two or more replica nodes based on the determined latency distances, and write-caching data into the preferred replica node.

Claims (43)

1. A method for enabling fault tolerance of a datacenter cluster caching system having one or more replica nodes in the same tier, the method comprising:

detecting a failure of the datacenter cluster;

performing load balancing among nodes of the datacenter cluster in accordance with the detected failure by moving data among storage tiers of the nodes; and

migrating replica data from a first replica node in the datacenter cluster to a second replica node in the datacenter cluster by:

writing new incoming data on the second replica node; and

maintaining unchanged cached data on the first replica node,

wherein the load balancing is performed without pausing a subsystem corresponding to the detected failure, and without copying an entirety of a dataset of a node of the datacenter cluster corresponding to the detected failure.

2. The method of claim 1 , further comprising:

evicting victim data from a solid-state drive of a primary node;

receiving the new incoming data at the primary node;

writing the new incoming data to a hard disk drive of the primary node; and

removing the victim data from a solid-state drive of the first replica node.

3. The method of claim 1 , wherein the detected failure comprises a virtual machine crash on a primary node of the datacenter cluster, the method further comprising:

writing dirty data from a solid-state drive of the primary node to a hard disk drive of the primary node;

maintaining the dirty data in a solid-state drive of a replica node;

flagging the dirty data in the solid-state drive of the replica node as nondirty;

restarting the crashed virtual machine on the primary node; and

forwarding incoming I/O requests to the solid-state drive of the primary node and to the solid-state drive of the replica node.

4. The method of claim 1 , wherein the detected failure comprises a cache device failure on a primary node of the datacenter cluster such that information cannot be written to the primary node, the method further comprising:

writing dirty data from a solid-state drive of a replica node of the datacenter cluster to a hard disk drive of the primary node;

maintaining the dirty data in the solid-state drive of the replica node;

flagging the dirty data as nondirty;

broadcasting the information to associated nodes of the datacenter cluster; and

writing back dirty data from respective solid-state drives of the associated nodes of the datacenter cluster to respective hard disk drives of the associated nodes.

5. The method of claim 4 , further comprising:

flagging data in the solid-state drives of the associated nodes with a nondirty flag;

replacing the solid-state drive on the primary node;

continuing to write incoming I/O requests to the solid-state drive of the primary node and the solid-state drive of the replica node; and

writing new replica data from the associated nodes to the solid-state drive of the primary node.

6. The method of claim 1 , wherein the detected failure comprises a cache device failure on the first replica node of the datacenter cluster, the method further comprising:

disconnecting a primary node of the datacenter cluster;

writing back dirty data from a solid-state drive of the primary node to a hard disk drive of the primary node;

finding a remote second replica node of the datacenter cluster;

storing the dirty data in a solid-state drive of the second replica node;

flagging the dirty data in the solid-state drive of the second replica node as nondirty; and

continuing to write incoming I/O requests to the solid-state drive of the primary node and the solid-state drive of the second replica node.

7. The method of claim 6 , wherein finding a remote second replica node of the datacenter cluster comprises using a dynamic evaluation process.

8. The method of claim 1 , wherein the detected failure comprises a communication failure between a primary node of the datacenter cluster and a first replica node of the datacenter cluster, the method further comprising:

writing back dirty data from a solid-state drive of the primary node to a hard disk drive of the primary node;

finding a second replica node to replace the first replica node;

writing I/O requests to a solid-state drive of the primary node and a solid-state drive of the second replica node; and

broadcasting to all nodes of the datacenter cluster a request to release all old replica data corresponding to the first replica node.

9. The method of claim 8 , wherein finding the second replica node comprises using a dynamic evaluation process.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 6, 2017
From: YANG, ZHENGYU; WANG, JIAYIN; EVANS, THOMAS DAVID
To: SAMSUNG ELECTRONICS CO., LTD
Reel/Frame 041181/0476 →
Continuity (3)
Provisional Application 62384078 · Sep 6, 2016
Provisional Application 62404167 · Oct 4, 2016
Related Publication 20180069944A1 · Mar 8, 2018
Cited By (1)
US 12,568,153