# US 11,442,958 B2 · Data distribution in continuous replication systems

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 11,442,958 B2
- Document ID: US11442958B2
- Status: Granted
- Kind: B2
- Application number: 16/395,035
- Filed: 2019-04-25
- Published: 2020-10-29
- Granted: 2022-09-13
- Earliest claimed: 2019-04-25
- Assignees: EMC IP Holding Company LLC
- Applicants: EMC IP Holding Company LLC
- Inventors: Amihai Savir; Assaf Natanzon
- Web page: https://patentgrep.com/patent/US11442958B2

## CPC

- G06F 11/1471: involving logging of persistent data for recovery
- G06F 16/27: Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
- G06F 11/1451: {by selection of backup contents}
- G06F 11/2094: {Redundant storage or storage space (G06F11/2056 takes precedence)}
- G06F 11/2097: {maintaining the standby controller/processing unit updated (initialisation or re-synchronisation thereof G06F11/1658 and subgroups)}
- G06F 2201/84: Using snapshots, i.e. a logical point-in-time copy of the data
- G06F 2201/855: Details of asynchronous mirroring using a journal to transfer not-yet-mirrored changes
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

Systems and methods for performing data protection operations including replication operations. A replication operation may automatically learn and predict when a replication system will need to switch modes, such as to a protective mode or to a fast-forward mode. The replication operation ensures that the data is replicated in a manner that optimizes the ability to retain data needed to perform point in time recovery operations while prioritizing the replication operation of new data.

## Claims

### Claim 1

In a computing system that replicates data assets at a source site to a target site, a method for replicating the data assets in a replication operation, the method comprising:
accessing historical data about the data assets at the source site that are being replicated;
generating a forecast for replication needs of the source site based on the historical data associated with the data assets at the source site;
switching a mode of the replication operation at the target site in accordance with the forecast and a state of a journal at the target site, wherein the journal includes memory including a free portion and a used portion, wherein the memory is used for replicating the data assets at the target site, wherein the forecast is used to determine whether the free portion is sufficient to accomodate the forecasted replication needs of the source site and wherein the mode is switched based on whether the journal can accommodate the forecasted replication needs; and
replicating the data assets at the target site according to the mode.

### Claim 2 (depends on 1)

The method of claim 1, further comprising collecting historical data from the data assets at the source site.

### Claim 3 (depends on 1)

The method of claim 1, wherein the mode is a normal mode, a protective mode, or a fast-forward mode.

### Claim 4 (depends on 3)

The method of claim 3, further comprising switching the mode to another mode based on the forecast.

### Claim 5 (depends on 1)

The method of claim 1, wherein entering a mode includes switching to another mode when the forecast crosses a threshold, wherein the threshold is an amount of the free portion in the memory.

### Claim 6 (depends on 1)

The method of claim 1, wherein the historical data includes at least one of a seasonality, a bias, and a level for each of the data assets individually and for the data assets as a whole.

### Claim 7 (depends on 6)

The method of claim 6, further comprising updating the forecast and determining whether to switch to a different mode.

### Claim 8 (depends on 3)

The method of claim 3, further comprising:
storing new data in a do stream portion of the journal and storing old data in an undo stream portion of the journal.

### Claim 9 (depends on 8)

The method of claim 8, further comprising expiring data in the undo stream.

### Claim 10 (depends on 8)

The method of claim 8, further comprising switching to a protective mode, wherein data distribution from the DO stream to a replica storage is suspended in the protective mode and data in the undo stream is preserved.

### Claim 11 (depends on 10)

The method of claim 10, further comprising switching to the fast-forward mode when the do stream is expected to fill the journal.

### Claim 12 (depends on 10)

The method of claim 10, further comprising switching to the normal mode when the forecast allows.

### Claim 13

A non-transitory computer readable medium comprising computer executable instructions that, when executed, perform a method for replicating data assets from a source site to a target site during a replication operation, the method comprising:
accessing historical data about the data assets at the source site that are being replicated;
generating a forecast for replication needs of the source site based on the historical data associated with the data assets at the source site;
switching a mode of the replication operation at the target site in accordance with the forecast and a state of a journal at the target site, wherein the journal includes memory including a free portion and a used portion, wherein the memory is used for replicating the data assets at the target site, wherein the forecast is used to determine whether the free portion is sufficient to accommodate the forecasted replication needs of the source site and wherein the mode is switched based on whether the journal can accommodate the forecasted replication needs; and
replicating the data assets at the target site according to the mode.

### Claim 14 (depends on 13)

The non-transitory computer readable medium of claim 13, further comprising collecting historical data from the data assets at the source site, wherein the mode is a normal mode, a protective mode, or a fast-forward mode.

### Claim 15 (depends on 14)

The non-transitory computer readable medium of claim 14, further comprising switching the mode to one of the normal mode, the protective mode, or the fast-forward mode based on the forecast, wherein the mode is switched based on a relationship of the forecast to a threshold, wherein the threshold relates to an amount of the free portion of the memory.

### Claim 16 (depends on 14)

The non-transitory computer readable medium of claim 14, wherein the historical data includes at least one of a seasonality, a bias, and a level for each of the data assets individually and for the data assets as a whole.

### Claim 17 (depends on 14)

The non-transitory computer readable medium of claim 14, further comprising updating the forecast and determining whether to switch to a different mode.

### Claim 18 (depends on 14)

The non-transitory computer readable medium of claim 14, further comprising:
storing new data in a do stream portion of the journal and storing old data in an undo stream portion of the journal.

### Claim 19 (depends on 18)

The non-transitory computer readable medium of claim 18, further comprising switching to the protective mode, wherein data distribution from the DO stream to a replica storage is suspended in the protective mode and data in the undo stream is preserved.

### Claim 20 (depends on 14)

The non-transitory computer readable medium of claim 14, further comprising switching to the fast forward mode when the do stream is expected to fill the journal or switching to a normal mode when the forecast allows.
