IP Library Granted Patent US 11,288,141
Granted Patent B2
US 11,288,141 · App. 16/718,363 · Granted Mar 29, 2022

AI-based online recovery of non-critical business process data with referential integrity

Inventors: Pratheek Veluswamy (Bangalore, IN); Shibi Panikkar (Bangalore, IN); Sekar Ponnayan (Bangalore, IN)
Assignee: EMC IP Holding Company LLC
G06F11/1469G06F11/1464G06F16/2365G06N20/00G06F2201/82
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,288,141
App. No.
16/718,363
Granted
Mar 29, 2022
Kind
B2
Abstract

A machine learning (ML) module that intelligently stores data in an online backup system based on the criticality of a business process. For a critical business process, all pre- and post-operation data are stored in the backup. For a non-critical business process, the ML module does not collect all data, but collects that data which deviates from a pre-defined target data pattern. Such deviating data is stored for a given time period and then discarded if no recovery request is received for it within the time period. Subsequent receipt of similar type of data may trigger the ML module to not store it. Thus, online backup storage is maintained at a manageable size without any loss of data for a critical business process. During data recovery, data is retrieved from the online backup with referential integrity to restore the original database without downtime to give a truly online recovery experience.

Claims (72)

1. A method comprising:

receiving, by a computing system, a first indication that a first business process is a non-critical business process;

determining, by the computing system, that a first database entry for a first operation associated with the first business process deviates from a first pre-defined target pattern;

storing, by the computing system, the first database entry for a pre-determined time period, wherein the first database entry is initially stored in a database, and wherein the method further comprises:

receiving, by the computing system, historical data from the database associated with the first business process, wherein the historical data includes content related to a plurality of transactions associated with the first business process prior to the first operation;

training, by the computing system, a machine learning (ML) module with the content of the historical data to enable the ML module to recognize a set of pre-defined data patterns present in the content and relationships among the data patterns, wherein the set of pre-defined data patterns includes the pre-defined target pattern; and

generating, by the computing system, a trained version of the ML module based on the training thereof; and

discarding, by the computing system, the stored first database entry in the absence of a first recovery request for the first operation within the pre-determined time period.

2. The method of claim 1 , wherein storing the first database entry comprises:

storing, by the computing system, the first database entry in a backup storage different from a database in which the first database entry was originally stored.

3. The method of claim 1 , further comprising:

in the absence of the first recovery request, recognizing, by the computing system, a data pattern of the first database entry as equivalent to the first pre-defined target pattern; and

beyond the pre-determined time period, discontinuing, by the computing system, storage of those database entries associated with the first business process that contain data patterns similar to the data pattern of the first database entry.

4. The method of claim 1 , wherein the first database entry includes one or more of the following:

date and time of the first operation;

an identification of a transaction associated with the first operation;

an identification of an originator of the transaction; and

data associated with the transaction.

5. The method of claim 1 , wherein the determining comprises:

using, by the computing system, the trained version of the ML module to determine that the first database entry for the first operation deviates from the pre-defined target pattern.

6. The method of claim 1 , wherein a second database entry for a second operation associated with the first business process is initially stored in a database, and wherein the method further comprises:

determining, by the computing system, that the second database entry deviates from a second pre-defined target pattern;

storing, by the computing system, the second database entry in a backup storage that is different from the database;

receiving, by the computing system, a second recovery request for the second operation within the pre-determined time period; and

performing, by the computing system, data recovery related to the second recovery request from the backup storage to the database based on data stored in the backup storage prior to the second operation.

7. The method of claim 6 , further comprising:

identifying, by the computing system, a data pattern of the second database entry; and

continuing, by the computing system, to store in the backup storage and beyond the pre-determined time period those database entries associated with the first business process that contain data patterns similar to the data pattern of the second database entry.

8. The method of claim 6 , wherein the first database entry and the second database entry are stored in a JavaScript Object Notation (JSON) format.

9. The method of claim 1 , further comprising:

receiving, by the computing system, a second indication that a second business process is a critical business process; and

storing, by the computing system, a second database entry for a second operation associated with the second business process beyond the pre-determined time period regardless of whether the second database entry deviates from a second pre-defined target pattern.

10. A computing system comprising:

a memory storing program instructions; and

a processing unit coupled to the memory and operable to execute the program instructions, which, when executed by the processing unit, cause the computing system to:

receive a first indication that a first business process is a non-critical business process;

determine that a first database entry for a first operation associated with the first business process deviates from a first pre-defined target pattern;

store the first database entry for a pre-determined time period, wherein the first database entry is initially stored in a database, and wherein the program instructions, upon execution by the processing unit, cause the computing system to:

receive historical data from the database associated with the first business process, wherein the historical data includes content related to a plurality of transactions associated with the first business process prior to the first operation;

train a machine learning (ML) module with the content of the historical data to enable the ML module to recognize a set of pre-defined data patterns present in the content and relationships among the data patterns, wherein the set of pre-defined data patterns includes the pre-defined target pattern;

generate a trained version of the ML module; and

use the trained version of the ML module to determine that the first database entry for the first operation deviates from the pre-defined target pattern; and

discard the stored first database entry in the absence of a first recovery request for the first operation within the pre-determined time period.

11. The computing system of claim 10 , wherein the program instructions, upon execution by the processing unit, cause the computing system to store the first database entry in a backup storage different from a database in which the first database entry was originally stored.

12. The computing system of claim 10 , wherein a second database entry for a second operation associated with the first business process is initially stored in a database, and wherein the program instructions, upon execution by the processing unit, cause the computing system to:

determine that the second database entry deviates from a second pre-defined target pattern;

store the second database entry in a backup storage that is different from the database;

receive a second recovery request for the second operation within the pre-determined time period;

perform data recovery related to the second recovery request from the backup storage to the database based on data stored in the backup storage prior to the second operation;

identify a data pattern of the second database entry; and

continue to store in the backup storage and beyond the pre-determined time period those database entries associated with the first business process that contain data patterns similar to the data pattern of the second database entry.

13. The computing system of claim 10 , wherein the program instructions, upon execution by the processing unit, cause the computing system to:

receive a second indication that a second business process is a critical business process; and

store a second database entry for a second operation associated with the second business process beyond the pre-determined time period regardless of whether the second database entry deviates from a second pre-defined target pattern.

14. The computing system of claim 13 , wherein the program instructions, upon execution by the processing unit, cause the computing system to store the first database entry and the second database entry in a JavaScript Object Notation (JSON) format.

15. A computer program product comprising a non-transitory computer-usable medium having computer-readable program code embodied therein, the computer-readable program code adapted to be executed by a computing system to implement a method comprising:

receiving an indication that a first business process is a non-critical business process;

determining that a first database entry for a first operation associated with the first business process deviates from a first pre-defined target pattern;

storing the first database entry for a pre-determined time period;

receiving historical data from a database associated with the first business process, wherein the first database entry is initially stored in the database, and wherein the historical data includes content related to a plurality of transactions associated with the first business process prior to the first operation;

training a machine learning (ML) module with the content of the historical data to enable the ML module to recognize a set of pre-defined data patterns present in the content and relationships among the data patterns, wherein the set of pre-defined data patterns includes the pre-defined target pattern;

generating a trained version of the ML module based on the training thereof; and

using the trained version of the ML module to determine that the first database entry for the first operation deviates from the pre-defined target pattern; and

discarding the stored first database entry in the absence of a first recovery request for the first operation within the pre-determined time period.

16. The computer program product of claim 15 , wherein the method further comprises:

in the absence of the first recovery request, recognizing a data pattern of the first database entry as equivalent to the first pre-defined target pattern; and

beyond the pre-determined time period, discontinuing storage of those database entries associated with the first business process that contain data patterns similar to the data pattern of the first database entry.

17. The computer program product of claim 15 , wherein a second database entry for a second operation associated with the first business process is initially stored in a database, and wherein the method further comprises:

determining that the second database entry deviates from a second pre-defined target pattern;

storing the second database entry in a backup storage that is different from the database;

receiving a second recovery request for the second operation within the pre-determined time period; and

performing data recovery related to the second recovery request from the backup storage to the database based on data stored in the backup storage prior to the second operation.

Assignments (9)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052216/0758) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 060438/0680 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053311/0169) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
Reel/Frame 060438/0742 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053546/0001) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC IP HOLDING COMPANY LLC
Reel/Frame 071642/0001 →
RELEASE OF SECURITY INTEREST AF REEL 052243 FRAME 0773 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 058001/0152 →
SECURITY INTEREST Recorded Jun 5, 2020
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 053311/0169 →
SECURITY AGREEMENT Recorded Apr 22, 2020
From: CREDANT TECHNOLOGIES INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 053546/0001 →
SECURITY AGREEMENT Recorded Mar 26, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 052243/0773 →
PATENT SECURITY AGREEMENT (NOTES) Recorded Mar 24, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052216/0758 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 22, 2020
From: VELUSWAMY, PRATHEEK; PANIKKAR, SHIBI; PONNAYAN, SEKAR
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 051584/0811 →
Continuity (1)
Related Publication 20210191824A1 · Jun 24, 2021