IP Library Granted Patent US 10,204,015
Granted Patent B2
US 10,204,015 · App. 15/691,635 · Granted Feb 12, 2019

Methods and apparatus for providing hypervisor level data services for server virtualization

Inventors: Tomer Ben-Or (Givat Haim Ichud, IL); Gil Barash (Tel Aviv, IL); Chen Burshan (Tel Aviv, IL); Yair Manor (Netanya, IL)
Assignee: ZERTO LTD.
G06F11/1451G06F3/065G06F3/0619G06F3/0631G06F3/0683G06F11/1435G06F11/1469G06F11/1471G06F11/1662G06F11/2038G06F11/2048G06F11/2097G06F2201/805G06F2201/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 10,204,015
App. No.
15/691,635
Granted
Feb 12, 2019
Kind
B2
Abstract

A data center for data backup and replication, including a pool of multiple storage units for storing a journal of I/O write commands issued at respective times, wherein the journal spans a history window of a pre-specified time length, and a journal manager for dynamically allocating more storage units for storing the journal as the journal size increases, and for dynamically releasing storage units as the journal size decreases.

Claims (63)

1. A data center for data backup and replication, comprising:

a server group at a protected site, the server group including a server having one or more first computing devices configured to send one or more input/output (I/O) commands via a network to a disk at the protected site; and

a journal manager that executes on one or more second computing devices at a recovery site, configured to:

intercept, for a first predetermined window of time, the one or more I/O commands sent via the network;

select a variable size storage unit from a pool of variable size storage units to store data corresponding to the one or more I/O commands, the variable size storage unit including a variable size data chunk corresponding to a second predetermined window of time; and

store the data corresponding to the one or more I/O commands in the variable size storage unit.

2. The data center of claim 1 , comprising:

the journal manager at the recovery site configured to:

compare a size of the data corresponding to the one or more I/O commands to a predesignated size of the variable size storage unit;

store the data corresponding to the one or more I/O commands in the variable size storage unit, responsive to a determination that the size of the data corresponds to the one or more I/O commands.

3. The data center of claim 1 , comprising:

the journal manager at the recovery site configured to:

determine that storage of the data corresponding to the one or more I/O commands in the variable size storage unit would result in the pool of variable size storage units to exceed a maximum size;

move old data from the pool of variable size storage units to a recovery disk, responsive to the determination that that storage of the data corresponding to the one or more I/O commands in the variable size storage unit would result in the pool of variable size storage units to exceed a maximum size.

4. The data center of claim 1 , comprising:

the journal manager at the recovery site configured to:

determine that old data stored in a recovery disk is unused; and

remove the old data from the pool from the recovery disk, responsive to a determination that the old data is unused.

5. The data center of claim 1 , comprising:

the journal manager at the recovery site configured to perform testing on first data stored in the pool of variable size units in parallel to storing second data onto the pool of variable size units.

6. The data center of claim 1 , comprising:

the journal manager at the recovery site configured to:

determine that the one or more I/O commands are intercepted within a time frame specified by a maintenance history for storing the data corresponding to the one or more I/O commands; and

store the data corresponding to the one or more I/O commands, responsive to a determination that that the one or more I/O commands are intercepted within the time frame specified by the maintenance history.

7. The data center of claim 1 , comprising:

the journal manager at the recovery site configured to:

determine a period of time elapsed since storage of the data on the disk at the protected site exceeds a pre-specified time lag; and

store the data corresponding to the one or more I/O commands, responsive to a determination that the period of time elapsed since storage of the data on the disk at the protected site exceeds the pre-specified time lag.

8. The data center of claim 1 , comprising:

the journal manager at the recovery site configured to dynamically move the data stored in the variable size storage unit to a recovery disk separate from the pool of variable size storage units.

9. The data center of claim 1 , comprising:

the journal manager at the recovery site configured to apply data replication journal parameters for the server group at the protected server, the data replication journal parameters set via an administrative user interface.

10. The data center of claim 1 , comprising:

the server of the server group configured to read and write data into the disk at the protected site, the server including at least one of a virtual server or a physical server; and

the disk at the protected site including at least one of a virtual disk or a physical disk.

11. A method of data backup and replication, comprising:

sending, by a server of a server group at a protected site, one or more input/output (I/O) commands via a network to a disk at the protected site;

intercepting, by a journal manager at a recovery site, for a first predetermined window of time, the one or more I/O commands sent via the network;

selecting, by the journal manager, a variable size storage unit from a pool of variable size storage units to store data corresponding to the one or more I/O commands, the variable size storage unit including a variable size data chunk corresponding to a second predetermined window of time; and

storing, by the journal manager, the data corresponding to the one or more I/O commands in the variable size storage unit.

12. The method of claim 11 , comprising:

comparing, by the journal manager, a size of the data corresponding to the one or more I/O commands to a predesignated size of the variable size storage unit; and

storing, by the journal manager, the data corresponding to the one or more I/O commands in the variable size storage unit, responsive to a determination that the size of the data corresponds to the one or more I/O commands.

13. The method of claim 11 , comprising:

determining, by the journal manager, that storage of the data corresponding to the one or more I/O commands in the variable size storage unit would result in the pool of variable size storage units to exceed a maximum size; and

moving, by the journal manager, old data from the pool of variable size storage units to a recovery disk, responsive to the determination that that storage of the data corresponding to the one or more I/O commands in the variable size storage unit would result in the pool of variable size storage units to exceed a maximum size.

14. The method of claim 11 , comprising:

determining, by the journal manager, that old data stored in a recovery disk is unused; and

removing, by the journal manager, the old data from the pool from the recovery disk, responsive to a determination that the old data is unused.

15. The method of claim 11 , comprising:

performing, by the journal manager, testing on first data stored in the pool of variable size units in parallel to store second data onto the pool of variable size units.

16. The method of claim 11 , comprising:

determining, by the journal manager, that the one or more I/O commands are intercepted within a time frame specified by a maintenance history for storing the data corresponding to the one or more I/O commands; and

storing, by the journal manager, the data corresponding to the one or more I/O commands, responsive to a determination that that the one or more I/O commands are intercepted within the time frame specified by the maintenance history.

17. The method of claim 11 , comprising:

determining, by the journal manager, a period of time elapsed since storage of the data on the disk at the protected site exceeds a pre-specified time lag; and

storing, by the journal manager, the data corresponding to the one or more I/O commands, responsive to a determination that the period of time elapsed since storage of the data on the disk at the protected site exceeds the pre-specified time lag.

18. The method of claim 11 , comprising:

dynamically moving, by the journal manager, the data stored in the variable size storage unit to a recovery disk separate from the pool of variable size storage units.

19. The method of claim 11 , comprising:

applying, by the journal manager, data replication journal parameters for the server group at the protected server, the data replication journal parameters set via an administrative user interface.

20. The method of claim 11 , comprising:

reading and writing, by the server, data into the disk at the protected site, the server including at least one of a virtual server or a physical server, the disk at the protected site including at least one of a virtual disk or a physical disk.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 10, 2024
From: ZERTO LTD.
To: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
Reel/Frame 066269/0960 →
SECURITY INTEREST Recorded Nov 19, 2019
From: ZERTO LTD.
To: KREOS CAPITAL VI (EXPERT FUND) L.P.
Reel/Frame 051044/0213 →
INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Nov 13, 2019
From: ZERTO LTD
To: SILICON VALLEY BANK
Reel/Frame 050998/0757 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 31, 2017
From: BEN-OR, TOMER; BARASH, GIL; BURSHAN, CHEN; KUSZPET, YAIR
To: ZERTO LTD.
Reel/Frame 043741/0252 →
Continuity (5)
Continuation 15175864 · Jun 7, 2016
Continuation 14977972 · Dec 22, 2015
Continuation 14478518 · Sep 5, 2014
Continuation 13175909 · Jul 4, 2011
Related Publication 20170364413A1 · Dec 21, 2017