IP Library Granted Patent US 11,210,185
Granted Patent B2
US 11,210,185 · App. 16/574,823 · Granted Dec 28, 2021

Method and system for data recovery in a data system

Inventors: Guangxin Yang (Beijing, CN); Dongyue Wang (Beijing, CN); Sihan Ge (Beijing, CN); Xinyu Wang (Beijing, CN); Wei Liang (Beijing, CN)
Assignee: VERIZON MEDIA INC.
G06F11/1474G06F11/1464G06F16/2365G06F2201/84
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 11,210,185
App. No.
16/574,823
Granted
Dec 28, 2021
Kind
B2
Abstract

The present teaching relates to request management and data recovery in a data system. In one example, a failure in connection with first data is detected at a first node in a data system. Information associated with a most recent transaction related to the first node is obtained from the persistent storage. Each of other nodes in the data system is requested to transmit one or more transaction requests previously sent to the first node after the most recent transaction. The one or more transaction requests are received from at least one of the other nodes. A sequence of one or more transactions associated with the one or more transaction requests is determined. The one or more transactions are executed according to the sequence in order to recover the first data at the first node.

Claims (42)

1. A method, implemented on a machine having at least one processor, storage, and a communication platform connected to a network for data recovery at a first node in a data system comprising a plurality of nodes and a persistent storage, the method comprising:

detecting, by the first node, a failure in connection with first data;

obtaining, by the first node, information associated with a most recent transaction related to the first node from the persistent storage, wherein the most recent transaction is executed prior to the failure in connection with the first data;

requesting, by the first node and based on the information associated with the most recent transaction, each of the other nodes in the data system to transmit one or more transaction requests previously sent to the first node after the most recent transaction, wherein the one or more transaction requests are associated with the first data;

receiving, by the first node, from at least one of the other nodes, the one or more transaction requests;

determining, by the first node, a sequence of one or more transactions associated with the one or more transaction requests; and

executing, by the first node, the one or more transactions according to the sequence in order to recover the first data at the first node.

2. The method of claim 1 , wherein the obtaining comprises:

restoring a latest snapshot of a memory state of the first node from the persistent storage;

determining a first transaction associated with the latest snapshot;

retrieving, from the persistent storage, one or more second transactions based on the first transaction; and

executing the one or more second transactions, wherein the most recent transaction is a transaction executed last among the one or more second transactions.

3. The method of claim 2 , wherein:

the first transaction is a transaction last executed before the latest snapshot was taken;

the one or more second transactions were executed previously in an order following the first transaction; and

the one or more second transactions are executed according to the order.

4. The method of claim 1 , further comprising:

obtaining a request for a new transaction; and

holding the request until the first data at the first node is recovered.

5. The method of claim 1 , further comprising de-duplicating a transaction request among the one or more transaction requests when multiple copies of the transaction request are received.

6. A system having at least one processor, storage, and a communication platform connected to a network for data recovery at a first node in a data system comprising a plurality of nodes and a persistent storage, the system comprising:

a recovery initiator located in the first node and configured for detecting a failure in connection with first data;

a commit log retrieving unit located in the first node and configured for obtaining information associated with a most recent transaction related to the first node from the persistent storage, wherein the most recent transaction is executed prior to the failure in connection with the first data;

a buffered request demander located in the first node and configured for requesting, based on the information associated with the most recent transaction, each of the other nodes in the data system to transmit one or more transaction requests previously sent to the first node after the most recent transaction, wherein the one or more transaction requests are associated with the first data;

a buffered request receiver located in the first node and configured for receiving, from at least one of the other nodes, the one or more transaction requests;

a transaction sequence determiner located in the first node and configured for determining a sequence of one or more transactions associated with the one or more transaction requests; and

one or more partition execution engines located in the first node and configured for executing the one or more transactions according to the sequence in order to recover the first data at the first node.

7. The system of claim 6 , further comprising a snapshot restoring unit, located in the first node, configured for restoring a latest snapshot of a memory state of the first node from the persistent storage and determining a first transaction associated with the latest snapshot, wherein:

the commit log retrieving unit is further configured for retrieving, from the persistent storage, one or more second transactions based on the first transaction; and

the one or more partition execution engines are further configured for executing the one or more second transactions, wherein the most recent transaction is a transaction executed last among the one or more second transactions.

8. The system of claim 7 , wherein:

the first transaction is a transaction last executed before the latest snapshot was taken;

the one or more second transactions were executed previously in an order following the first transaction; and

the one or more second transactions are executed according to the order.

9. The system of claim 6 , wherein the transaction sequence determiner is further configured for de-duplicating a transaction request among the one or more transaction requests when multiple copies of the transaction request are received.

10. A machine-readable, non-transitory and tangible medium having information recorded thereon for data recovery at a first node in a data system comprising a plurality of nodes and a persistent storage, wherein the information, when read by the machine, causes the machine to perform the following:

detecting, by the first node, a failure in connection with first data;

obtaining, by the first node, information associated with a most recent transaction related to the first node from the persistent storage, wherein the most recent transaction is executed prior to the failure in connection with the first data;

requesting, by the first node and based on the information associated with the most recent transaction, each of the other nodes in the data system to transmit one or more transaction requests previously sent to the first node after the most recent transaction, wherein the one or more transaction requests are associated with the first data;

receiving, by the first node, from at least one of the other nodes, the one or more transaction requests;

determining by the first node, a sequence of one or more transactions associated with the one or more transaction requests; and

executing by the first node, the one or more transactions according to the sequence in order to recover the first data at the first node.

Assignments (6)
PATENT SECURITY AGREEMENT (FIRST LIEN) Recorded Sep 29, 2022
From: YAHOO ASSETS LLC
To: ROYAL BANK OF CANADA, AS COLLATERAL AGENT
Reel/Frame 061571/0773 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 16, 2021
From: YAHOO AD TECH LLC (FORMERLY VERIZON MEDIA INC.)
To: YAHOO ASSETS LLC
Reel/Frame 058982/0282 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 26, 2020
From: OATH INC.
To: VERIZON MEDIA INC.
Reel/Frame 054258/0635 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 18, 2019
From: YANG, GUANGXIN; WANG, DONGYUE; GE, SIHAN; WANG, XINYU; LIANG, WEI
To: YAHOO! INC.
Reel/Frame 050418/0593 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 18, 2019
From: YAHOO! INC.
To: YAHOO HOLDINGS, INC.
Reel/Frame 050423/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 18, 2019
From: YAHOO HOLDINGS, INC.
To: OATH INC.
Reel/Frame 050423/0347 →