IP Library Granted Patent US 9,612,919
Granted Patent B2
US 9,612,919 · App. 14/584,703 · Granted Apr 4, 2017

Methods and apparatus for storing and transmitting historical configuration data associated with information technology assets

Inventors: Joseph Fitzgerald (Franklin Lakes, NJ); Oleg Barenboim (Fort Lee, NJ); Gregory McCullough (Kinnelon, NJ); Gregg Tanzillo (Middletown, NY); Richard Oliveri (Warren, NJ); Daniel A. Clarizio (Antelope, CA)
Assignee: ManageIQ, Inc.
G06F11/1464G06F8/60G06F11/1469G06F8/68Y10S707/99953Y10S707/99954
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,612,919
App. No.
14/584,703
Granted
Apr 4, 2017
Kind
B2
Abstract

Methods and apparatus for storing and transmitting historical configuration data associated with information technology assets are disclosed. The system reads and stores a first version of data with a timestamp. The system then performs a local update by reading a second version of data with a timestamp, replacing the first set of data and timestamp, and storing the changes between the first and second versions of data. The system also may receive update requests from a remote location for the latest version of data. The changes between versions of data are sent to the remote location, where the changes between versions of data are stored and are usable to create the requested latest version of data and/or prior versions of data.

Claims (56)

1. A computer implemented method for storing historical configuration data associated with an information technology asset, the method comprising:

reading a first configuration data set from a machine at a first time;

storing the first configuration data set, wherein a first timestamp is stored with the first configuration data set;

reading a second configuration data set at a second time;

replacing the first configuration data set with the second configuration data set, wherein a second timestamp is stored with the second configuration data set, the second timestamp being chronologically after the first timestamp;

reading a third configuration data set at a third time;

replacing the second configuration data set with the third configuration data set, wherein a third timestamp is stored with the third configuration data set, the third timestamp being chronologically after the second timestamp;

persistently storing a first delta between the first configuration data set and the second configuration data set and a second delta between the second configuration data set and the third configuration data set after the third configuration data set replaced the first configuration data set to allow for a restore of any one of the first configuration data set and the second configuration data set;

receiving a request to update a remote machine; and

transmitting the first delta and the second delta to the remote machine.

2. The method of claim 1 , further comprising:

reading a fourth configuration data set at a fourth time;

replacing the third configuration data set with the fourth configuration data set, wherein a fourth timestamp is stored with the fourth configuration data set, the fourth timestamp being chronologically after the third timestamp; and

persistently storing a third delta between the third configuration data set and the fourth configuration data set to allow for a restore of any one of the first configuration data set, the second configuration data set, and the third configuration data set.

3. The method of claim 1 , wherein the remote machine uses the first delta and the second delta to determine the third configuration data set.

4. The method of claim 3 , wherein the remote machine persistently stores the first delta and the second delta.

5. The method of claim 4 , wherein the first delta and the second delta are forward deltas.

6. The method of claim 5 , wherein remote machine converts the first delta and the second delta to reverse deltas.

7. An apparatus for storing historical configuration data associated with an information technology asset, the apparatus comprising:

a processor; and

a storage device, the storage device storing a software program structured to cause the processor to:

read a first configuration data set from a machine at a first time;

store the first configuration data set, wherein a first timestamp is stored with the first configuration data set;

read a second configuration data set at a second time;

replace the first configuration data set with the second configuration data set, wherein a second timestamp is stored with the second configuration data set, the second timestamp being chronologically after the first timestamp;

read a third configuration data set at a third time;

replace the second configuration data set with the third configuration data set, wherein a third timestamp is stored with the third configuration data set, the third timestamp being chronologically after the second timestamp;

persistently store a first delta between the first configuration data set and the second configuration data set and a second delta between the second configuration data set and the third configuration data set after the third configuration data set replaced the first configuration data set to allow for a restore of any one of the first configuration data set and the second configuration data set;

receive a request to update a remote machine; and

transmit the first delta and the second delta to the remote machine.

8. The apparatus of claim 7 , wherein the software program is structured to cause the processor to:

read a fourth configuration data set at a fourth time;

replace the third configuration data set with the fourth configuration dataset, wherein a fourth timestamp is stored with the fourth configuration data set, the fourth timestamp being chronologically after the third timestamp; and

persistently store a third delta between the third configuration data set and the fourth configuration data set to allow for a restore of any one of the first configuration data set, the second configuration data set, and the third configuration data set.

9. The apparatus of claim 7 , wherein the information technology asset is a physical machine.

10. The apparatus of claim 7 , wherein the information technology asset is a virtual machine.

11. The apparatus of claim 7 , wherein the remote machine uses the first delta and the second delta to determine the third configuration data set, and

wherein the remote machine persistently stores the first delta and the second delta.

12. A non-transitory machine readable media storing instructions structured to cause an apparatus for storing historical configuration data associated with an information technology asset to:

read a first configuration data set from a machine at a first time;

store the first configuration data set, wherein a first timestamp is stored with the first configuration data set;

read a second configuration data set at a second time;

replace the first configuration data set with the second configuration data set, wherein a second timestamp is stored with the second configuration data set, the second timestamp being chronologically after the first timestamp;

read a third configuration data set at a third time;

replace the second configuration data set with the third configuration data set, wherein a third timestamp is stored with the third configuration data set, the third timestamp being chronologically after the second timestamp;

persistently store a first delta between the first configuration data set and the second configuration data set and a second delta between the second configuration data set and the third configuration data set after the third configuration data set replaced the first configuration data set to allow for a restore of any one of the first configuration data set and the second configuration data set;

receive a request to update a remote machine; and

transmit the first delta and the second delta to the remote machine.

13. The non-transitory machine readable media of claim 12 , wherein the instructions are structured to cause the apparatus to:

read a fourth configuration data set at a fourth time;

replace the third configuration data set with the fourth configuration data set, wherein a fourth timestamp is stored with the fourth configuration data set, the fourth timestamp being chronologically after the third timestamp; and

persistently store a third delta between the third configuration data set and the fourth configuration data set to allow for a restore of any one of the first configuration data set, the second configuration data set, and the third configuration data set.

14. The non-transitory machine readable media of claim 12 , wherein the remote machine uses the first delta and the second delta to determine the third configuration data set.

15. The non-transitory machine readable media of claim 14 , wherein the remote machine persistently stores the first delta and the second delta.

16. The non-transitory machine readable media of claim 15 , wherein the first delta and the second delta are forward deltas.

17. The non-transitory machine readable media of claim 16 , wherein remote machine converts the first delta and the second delta to reverse deltas.

Assignments (2)
MERGER Recorded Apr 5, 2018
From: MANAGEIQ, INC.
To: RED HAT, INC.
Reel/Frame 045445/0665 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 1, 2015
From: FITZGERALD, JOSEPH J.; BARENBOIM, OLEG; MCCULLOUGH, GREGORY; TANZILLO, GREGG; OLIVERI, RICHARD; CLARIZIO, DANIEL A.
To: MANAGEIQ, INC.
Reel/Frame 035544/0109 →
Continuity (3)
Continuation 13847908 · Mar 20, 2013
Continuation 11945947 · Nov 27, 2007
Related Publication 20150120670A1 · Apr 30, 2015