IP Library Granted Patent US 12,481,563
Granted Patent B2
US 12,481,563 · App. 18/236,160 · Granted Nov 25, 2025

Site and storage tier aware reference resolution

Inventors: Brajesh Kumar Shrivastava (Bihar, IN); Kai Tan (Cary, NC); Pranab Patnaik (Cary, NC)
Assignee: Nutanix, Inc.
G06F11/1464G06F11/1466
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 12,481,563
App. No.
18/236,160
Filed
Aug 21, 2023
Granted
Nov 25, 2025
Kind
B2
Art Unit
2113
USPC
714/6.3
Abstract

A site and storage tier aware technique replicates data as one or more recovery points (RPs) from a primary site to a secondary site in a multi-site data replication environment. A storage tier aware reference resolver determines (i) an amount of RP data transfer associated with the replication and (ii) location information associated with a cloud storage tier storing the RP data in an object store. The storage tier aware reference resolution aspect provides two additional factors to consider when retrieving data of a reference RP from cloud storage: (iii) the time (duration) needed to retrieve the data and (iv) the cost (financial expense) needed to retrieve the data. In addition, a site aware reference resolution aspect of the technique determines an optimal RP to use as the reference RP and involves consideration of (v) which RPs have been replicated from the primary site to the secondary site and (vi) which RPs have been retained for storage at the sites.

Claims (43)

1 . A method comprising:

replicating and incrementally updating data as one or more recovery points (RPs) from a primary site to one or more storage tiers of a multi-tiered archival storage system at a secondary site, wherein the secondary site retains an inventory of RPs larger than that of the primary site;

initiating by the primary site a protocol message exchange with the secondary site to identify one or more candidate locations to use for retrieval of the data based on locations of the RPs among the one or more storage tiers, wherein the protocol message exchange includes constraints provided by the primary site of an expense to extract the data and a duration to extract the data from the one or more storage tiers; and

retrieving the data at the primary site from the secondary site using incremental differences of the data based on a reference RP, wherein the reference RP is rendered from a reference resolution selection based on the constraints provided by the primary site as well as the larger inventory of RPs retained at the secondary site and the identified candidate location of the data.

2 . The method of claim 1 , further comprising:

providing a list of the candidate locations to the primary site from the secondary site; and

pruning the list of candidate locations, wherein the identification of the candidate location to use for the data retrieval is made at the primary site.

3 . The method of claim 1 , further comprising:

replicating the RP to another secondary site having a retention policy longer than that for the RP at the secondary site, wherein the identified candidate location includes the RP at the another secondary site.

4 . The method of claim 1 , wherein the retrieved data of the RP is from a plurality of candidate locations and the identification of the candidate location to use for retrieval of the data includes an aggregation of the plurality of candidate locations according to the constraints.

5 . The method of claim 1 , wherein the constraints optimize for a lowest duration to retrieve the data.

6 . The method of claim 1 , further comprising cascade replicating the RP to a tertiary site from the secondary site, wherein the replicated RP to the tertiary site is included in the candidate locations.

7 . The method of claim 1 , wherein the primary site includes the RP with a retention policy shorter than that of the secondary site.

8 . The method of claim 1 , wherein the identified candidate location at the archival storage system is stored in an index data structure created when the RP is replicated to the secondary site.

9 . A non-transitory computer readable medium including program instructions for execution on a processor, the program instructions configured to:

replicate and incrementally update data as one or more recovery points (RPs) from a primary site to one or more storage tiers of a multi-tiered archival storage system at a secondary site, wherein the secondary site retains an inventory of RPs larger than that of the primary site;

initiate by the primary site a protocol message exchange with the secondary site to identify one or more candidate locations to use for retrieval of the data based on locations of the RPs among the one or more storage tiers, wherein the protocol message exchange includes constraints provided by the primary site of an expense to extract the data and a duration to extract the data from the one or more storage tiers; and

retrieve the data at the primary site from the secondary site using incremental differences of the data based on a reference RP, wherein the reference RP is rendered from a reference resolution selection based on the constraints provided by the primary site as well as the larger inventory of RPs retained at the secondary site and the identified candidate location of the data.

10 . The non-transitory computer readable medium of claim 9 wherein the program instructions are further configured to:

provide a list of the candidate locations to the primary site from the secondary site; and

prune the list of candidate locations, wherein the identification of the candidate location to use for the data retrieval is made at the primary site.

11 . The non-transitory computer readable medium of claim 9 wherein the program instructions are further configured to:

replicate the RP to another secondary site having a retention policy longer than that for the RP at the secondary site, wherein the identified candidate location includes the RP at the another secondary site.

12 . The non-transitory computer readable medium of claim 9 wherein the retrieved data of the RP is from a plurality of candidate locations and the identification of the candidate location to use for retrieval of the data includes an aggregation of the plurality of candidate locations according to the constraints.

13 . The non-transitory computer readable medium of claim 9 wherein the constraints optimize for a lowest duration to retrieve the data.

14 . The non-transitory computer readable medium of claim 9 wherein the program instructions are further configured to cascade replicate the RP to a tertiary site from the secondary site, wherein the replicated RP to the tertiary site is included in the candidate locations.

15 . The non-transitory computer readable medium of claim 9 wherein the primary site includes the RP with a retention policy shorter than that of the secondary site.

16 . The non-transitory computer readable medium of claim 9 wherein the identified candidate location at the archival storage system is stored in an index data structure created when the RP is replicated to the secondary site.

17 . An apparatus comprising:

a network connecting a node of a primary site to a secondary site, the node having a processor configured to execute program instructions configured to:

replicate and incrementally update data as one or more recovery points (RPs) from a primary site to one or more storage tiers of a multi-tiered archival storage system at a secondary site, wherein the secondary site retains an inventory of RPs larger than that of the primary site;

initiate by the primary site a protocol message exchange with the secondary site to identify one or more candidate locations to use for retrieval of the data based on locations of the RPs among the one or more storage tiers, wherein the protocol message exchange includes constraints provided by the primary site of an expense to extract the data and a duration to extract the data from the one or more storage tiers; and

retrieve the data at the primary site from the secondary site using incremental differences of the data based on a reference RP, wherein the reference RP is rendered from a reference resolution selection based on the constraints provided by the primary site as well as the larger inventory of RPs retained at the secondary site and the identified candidate location of the data.

18 . The apparatus of claim 17 wherein the program instructions are further configured to:

provide a list of the candidate locations to the primary site from the secondary site; and

prune the list of candidate locations, wherein the identification of the candidate location to use for the data retrieval is made at the primary site.

19 . The apparatus of claim 17 wherein the program instructions are further configured to:

replicate the RP to another secondary site having a retention policy longer than that for the RP at the secondary site, wherein the identified candidate location includes the RP at the another secondary site.

20 . The apparatus of claim 17 wherein the retrieved data of the RP is from a plurality of candidate locations and the identification of the candidate location to use for retrieval of the data includes an aggregation of the plurality of candidate locations according to the constraints.

21 . The apparatus of claim 17 wherein the constraints optimize for a lowest duration to retrieve the data.

22 . The apparatus of claim 17 wherein the program instructions are further configured to cascade replicate the RP to a tertiary site from the secondary site, wherein the replicated RP to the tertiary site is included in the candidate locations.

23 . The apparatus of claim 17 wherein the primary site includes the RP with a retention policy shorter than that of the secondary site.

24 . The apparatus of claim 17 wherein the identified candidate location at the archival storage system is stored in an index data structure created when the RP is replicated to the secondary site.

Assignments (2)
SECURITY INTEREST Recorded Feb 13, 2025
From: NUTANIX, INC.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 070206/0463 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 21, 2023
From: SHRIVASTAVA, BRAJESH KUMAR; TAN, KAI; PATNAIK, PRANAB
To: NUTANIX, INC.
Reel/Frame 064652/0172 →
Priority Claims (1)
IN 202341022470 · Mar 28, 2023 · national
Continuity (1)
Related Publication 20240330118A1 · Oct 3, 2024
References Cited (30)
US 8140484B2 · Blitzer et al. · 2012 [cited by applicant]
US 8549518B1 · Aron et al. · 2013 [cited by applicant]
US 8601473B1 · Aron et al. · 2013 [cited by applicant]
US 8850130B1 · Aron et al. · 2014 [cited by applicant]
US 8863124B1 · Aron et al. · 2014 [cited by applicant]
US 9009106B1 · Aron et al. · 2015 [cited by applicant]
US 9069708B2 · Gill et al. · 2015 [cited by applicant]
US 9336132B1 · Aron et al. · 2016 [cited by applicant]
US 9652265B1 · Narayanasamy et al. · 2017 [cited by applicant]
US 9747287B1 · Bhardwaj et al. · 2017 [cited by applicant]
US 10210054B1 · Mehrotra et al. · 2019 [cited by applicant]
US 10657006B2 · Burshan et al. · 2020 [cited by applicant]
US 11243851B2 · Saad et al. · 2022 [cited by applicant]
US 11272006B2 · Saad et al. · 2022 [cited by applicant]
US 11829328B2 · Gupta et al. · 2023 [cited by applicant]
US 20130005453A1 · Sengupta et al. · 2013 [cited by applicant]
US 20140250080A1 · Gardner · 2014 [cited by examiner]
US 20150030190A1 · Tadano · 2015 [cited by applicant]
US 20160002653A1 · Poluri · 2016 [cited by applicant]
US 20220030901A1 · Jiang et al. · 2022 [cited by applicant]
US 20220066882A1 · Wang · 2022 [cited by examiner]
US 20230002967A1 · Gupta et al. · 2023 [cited by applicant]
US 20230029616A1 · Pandit · 2023 [cited by examiner]
EP 4124968A1 · 2023 [cited by applicant]
Cano, Ignacio, “Curator: Self-Managing Storage for Enterprise Clusters” University of Washington; published Mar. 2017; pp. all. [cited by applicant]
Citrix XenDesktop 7.1 on Microsoft Hyper-V Server 2012 R2 on Nutanix Virtual Computing Platform Solution Design Citrix Validated Solutions, Jun. 25, 2014, 95 pages. [cited by applicant]
Mansouri, Yaser, and Rajkumar Buyya. “To move or not to move: Cost optimization in a dual cloud-based storage architecture.” Science Direct, Journal of Network and Computer Applications, Aug. 29, 2016, 5 pages. https://… [cited by applicant]
Poitras, Steven “The Nutanix Bible” from http://stevenpoitras.com/the-nutanix-bible/ Oct. 15, 2013 (Publication date based on indicated capture date by Archive.org first publication date unknown) pp. all. [cited by applicant]
Poitras, Steven “The Nutanix Bible—Classic Edition” from https://nutanixbible.com/, dated Jan. 3, 2024, 282 pages. [cited by applicant]
Wilson, Michael “Establishing RPO and RTO Targets for Cloud Applications” Jun. 16, 2022, 4 pages. https://aws.amazon.com/blogs/mt/establishing-rpo-and-rto-targets-for-cloud-applications/. [cited by applicant]