Systems and methods for distributing replication tasks within computing clusters

US9075856B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9075856-B2
Application numberUS-201313856829-A
CountryUS
Kind codeB2
Filing dateApr 4, 2013
Priority dateMar 14, 2013
Publication dateJul 7, 2015
Grant dateJul 7, 2015

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A computer-implemented method for distributing replication tasks within computing clusters may include (1) identifying a primary volume that is replicated to a secondary volume, (2) identifying a computing cluster with access to the primary volume that includes at least a first node and a second node, (3) receiving a request to write data to the primary volume, (4) logging, via the first node, the request to write the data to the primary volume to a replication log, and (5) using the replication log to replicate, via the second node, the data to the secondary volume. Various other methods, systems, and computer-readable media are also disclosed.

First claim

Opening claim text (preview).

What is claimed is: 1. A computer-implemented method for distributing replication tasks within computing clusters, at least a portion of the method being performed by a computing device comprising at least one processor, the method comprising: identifying a primary volume that is replicated to a secondary volume; identifying a computing cluster with access to the primary volume, the computing cluster comprising at least a first node and a second node; monitoring at least one property of the computing cluster; receiving a request to write data to the primary volume; selecting, based at least in part on the at least one property of the computing cluster, the first node to log the request to write the data to the primary volume to a replication log; selecting, based at least in part on the at least one property of the computing cluster, the second node to use the replication log to replicate the data to the secondary volume; logging, via the first node, the request to write the data to the primary volume to the replication log; using the replication log to replicate, via the second node, the data to the secondary volume. 2. The computer-implemented method of claim 1 , wherein only one node within the computing cluster is capable of having read/write access to the replication log; further comprising, prior to receiving the request to write the data to the primary volume: configuring the first node with read/write access to the replication log; configuring the second node with read-only access to the replication log. 3. The computer-implemented method of claim 1 , wherein: the second node is configured with read-only access to the replication log; using the replication log to replicate, via the second node, the data to the secondary volume comprises: reading, at the second node, the data from the replication log; replicating, via the second node, the data to the secondary volume; receiving, at the second node, a notification that indicates that the data has been successfully replicated to the secondary volume; sending, via the second node, a request to the first node that instructs the first node to update the replication log to reflect the data having been successfully replicated to the secondary volume. 4. The computer-implemented method of claim 1 , wherein more than one node within the computing cluster is capable of having read/write access to the replication log; further comprising configuring, prior to receiving the request to write the data to the primary volume, the first node and the second node with read/write access to the replication log. 5. The computer-implemented method of claim 1 , wherein logging, via the first node, the request to write the data to the primary volume to the replication log comprises: allocating, at the first node, a position in the replication log to which the request to write the data to the primary volume can be logged; logging the request to write the data to the primary volume to the position in the replication log. 6. The computer-implemented method of claim 1 , wherein using the replication log to replicate, via the second node, the data to the secondary volume comprises: reading, at the second node, the data from the replication log; replicating, via the second node, the data to the secondary volume; receiving, at the second node, a notification that indicates that the data has been successfully replicated to the secondary volume; updating, at the second node, the replication log to reflect the data having been successfully replicated to the secondary volume. 7. The computer-implemented method of claim 1 , wherein: monitoring the at least one property of the computing cluster comprises monitoring the input/output load on the first node; selecting the first node comprises: determining that the input/output load on the first node is greater than the input/output load on any other node in the computing cluster; selecting, based at least in part on determining that the input/output load of the first node is greater than the input/output load of any other node in the computing cluster, the first node to log the request to write the data to the primary volume to the replication log. 8. The computer-implemented method of claim 1 , wherein: monitoring the at least one property of the computing cluster comprises monitoring at least one property of the second node; selecting the second node comprises selecting, based at least in part on the property of the second node, the second node to use the replication log to replicate the data to the secondary volume. 9. The computer-implemented method of claim 8 , wherein the property of the second node comprises at least one of: the input/output load on the second node; central-processing-unit availability on the second node; memory availability on the second node; network-bandwidth availability on the second node; whether the second node has access to the replication log; whether the second node has access to a network interface required to replicate the primary volume to the secondary volume. 10. The computer-implemented method of claim 1 , further comprising failing over, to an additional node within the computing cluster, at least one replication task associated with replicating the primary volume to the secondary volume. 11. The computer-implemented method of claim 1 , wherein the first node is distinct from the second node. 12. A system for distributing replication tasks within computing clusters, the system comprising: an identifying module programmed to: identify a primary volume that is replicated to a secondary volume; identify a computing cluster with access to the primary volume, the computing cluster comprising at least a first node and a second node; a receiving module programmed to receive a request to write data to the primary volume; a configuring module programmed to: monitor at least one property of the computing cluster; select, based at least in part on the at least one property of the computing cluster, the first node to log the request to write the data to the primary volume to a replication log; select, based at least in part on the at least one property of the computing cluster, the second node to use the replication log to replicate the data to the secondary volume; a logging module programmed to log, via the first node, the request to write the data to the primary volume to the replication log; a replicating module programmed to use the replication log to replicate, via the second node, the data to the secondary volume; at least one processor configured to execute the identifying module, the receiving module, the logging module, and the replicating module. 13. The system of claim 12 , wherein: only one node within the computing cluster is capable of having read/write access to the replication log; the configuring module is further programmed to, prior to receiving the request to write the data to the primary volume: configure the first node with read/write access to the replication log; configure the second node with read-only access to the replication log. 14. The system of claim 12 , wherein: the second node is configured with read-only access to the replication log; the replicating module is programmed to use the replication log to replicate, via the second node, the data to the secondary volume by: reading, at the second node, the data from the replication log; replicating, via the second node, the data to the secondary volume; receiving, at the second node, a notification that indicates that the data has been successfully replicated to the secon

Assignees

Inventors

Classifications

  • Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor · CPC title

  • G06F3/065Primary

    Replication mechanisms · CPC title

  • Physics · mapped topic

  • G06F16/182Primary

    Distributed file systems · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9075856B2 cover?
A computer-implemented method for distributing replication tasks within computing clusters may include (1) identifying a primary volume that is replicated to a secondary volume, (2) identifying a computing cluster with access to the primary volume that includes at least a first node and a second node, (3) receiving a request to write data to the primary volume, (4) logging, via the first node, …
Who is the assignee on this patent?
Symantec Corp
What technology area does this patent fall under?
Primary CPC classification G06F3/065. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Jul 07 2015 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).