IP Library Granted Patent US 11,086,553
Granted Patent B1
US 11,086,553 · App. 16/553,267 · Granted Aug 10, 2021

Tiering duplicated objects in a cloud-based object store

Inventor: James Fisher (Golden, CO)
Assignee: Pure Storage, Inc.
G06F3/065G06F3/067G06F3/0614G06F3/0652H04L67/1097
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 11,086,553
App. No.
16/553,267
Granted
Aug 10, 2021
Kind
B1
Abstract

Tiering duplicated objects in a cloud-based object store, including: determining, for a particular data object, a number of copies of the data object to be retained; storing, in a first data tier, at least one copy of the data object; storing, in a second data tier, one or more copies of the data object, wherein a number of copies of the data object that are stored in the second data tier is equal to the number of copies of the data object to be retained minus a number of copies of the data object that are stored in the first data tier; and responsive to receiving a request for the data object, servicing the request from the first data tier.

Claims (53)

1. A method comprising:

determining, for a particular data object, a number of copies of the data object to be retained;

storing, in a first data tier, at least one copy of the data object;

storing, in a second data tier, one or more copies of the data object, wherein a number of copies of the data object that are stored in the second data tier is equal to the number of copies of the data object to be retained minus a number of copies of the data object that are stored in the first data tier;

determining that a number of copies of the data object that are stored in the first data tier exceeds a number of copies of the data object that are needed to sufficiently service requests to retrieve the data object;

migrating one or more copies of the data object that are stored in the first data tier to the second data tier in response to determining that a number of copies of the data object that are stored in the first data tier exceeds a number of copies of the data object that are needed to sufficiently service requests to retrieve the data object; and

servicing the request for the data object from the first data tier.

2. The method of claim 1 wherein the first data tier utilizes on-premises storage and the second data tier utilizes storage provided by a cloud services provider.

3. The method of claim 1 wherein the first data tier utilizes a first type of storage provided by a cloud services provider and the second data tier utilizes a second type of storage provided by a cloud services provider, wherein the first type of storage provided by the cloud services provider offers faster read latencies than the second type of storage provided by the cloud services provider.

4. The method of claim 1 further comprising:

receiving a request to delete the data object; and

responsive to receiving the request to delete the data object, deleting at least one copy of the data object that is stored in the second data tier.

5. The method of claim 1 further comprising deleting, in dependence upon a deletion policy, one or more copies of the data object from the second data tier.

6. The method of claim 1 further comprising:

receiving a request to store the data object;

determining that a copy of the data object resides within the first data tier; and

responsive to determining that the copy of the data object resides within the first data tier, storing an additional copy of the data object in the second data tier.

7. The method of claim 1 further comprising:

determining that a number of copies of the data object that are stored in the first data tier are not sufficient to service requests to retrieve the data object; and

responsive to determining that a number of copies of the data object that are stored in the first data tier are not sufficient to service requests to retrieve the data object, migrating one or more copies of the data object that are stored in the second data tier to the first data tier.

8. A method comprising:

receiving a request to store a data object;

determining that a copy of the data object resides within a first data tier;

responsive to determining that the copy of the data object resides within the first data tier, storing an additional copy of the data object in a second data tier;

determining that a number of copies of the data object that are stored in the first data tier exceeds a number of copies of the data object that are needed to sufficiently service requests to retrieve the data object;

responsive to determining that the number of copies of the data object that are stored in the first data tier exceeds the number of copies of the data object that are needed to sufficiently service requests to retrieve the data object, migrating one or more copies of the data object that are stored in the first data tier to the second data tier; and

responsive to receiving a request for the data object, servicing the request from the first data tier.

9. The method of claim 8 wherein the first data tier utilizes on-premises storage and the second data tier utilizes storage provided by a cloud services provider.

10. The method of claim 8 wherein the first data tier utilizes a first type of storage provided by a cloud services provider and the second data tier utilizes a second type of storage provided by a cloud services provider, wherein the first type of storage provided by the cloud services provider offers faster read latencies than the second type of storage provided by the cloud services provider.

11. The method of claim 8 further comprising:

receiving a request to delete the data object; and

responsive to receiving the request to delete the data object, determining that a copy of the data object resides within the second data tier; and

responsive to determining that the copy of the data object resides within the second data tier, deleting at least one copy of the data object that is stored in the second data tier.

12. The method of claim 8 further comprising deleting, in dependence upon a deletion policy, one or more copies of the data object from the second data tier.

13. A computer program product disposed upon a computer readable medium, the computer program product comprising computer program instructions that, when executed, cause a computer to carry out the steps of:

determining, for a particular data object, a number of copies of the data object to be retained;

storing, in a first data tier, at least one copy of the data object;

storing, in a second data tier, one or more copies of the data object, wherein a number of copies of the data object that are stored in the second data tier is equal to the number of copies of the data object to be retained minus a number of copies of the data object that are stored in the first data tier;

determining that a number of copies of the data object that are stored in the first data tier exceeds a number of copies of the data object that are needed to sufficiently service requests to retrieve the data object;

migrating one or more copies of the data object that are stored in the first data tier to the second data tier in response to determining that a number of copies of the data object that are stored in the first data tier exceeds a number of copies of the data object that are needed to sufficiently service requests to retrieve the data object; and

responsive to receiving a request for the data object, servicing the request from the first data tier.

14. The computer program product of claim 13 wherein the first data tier utilizes a first type of storage provided by a cloud services provider and the second data tier utilizes a second type of storage provided by a cloud services provider, wherein the first type of storage provided by the cloud services provider offers faster read latencies than the second type of storage provided by the cloud services provider.

15. The computer program product of claim 13 further comprising computer program instructions that, when executed, cause the computer to carry out the steps of:

receiving a request to delete the data object; and

responsive to receiving the request to delete the data object, deleting at least one copy of the data object that is stored in the second data tier.

16. The computer program product of claim 13 further comprising computer program instructions that, when executed, cause the computer to carry out the step of deleting, in dependence upon a deletion policy, one or more copies of the data object from the second data tier.

17. The computer program product of claim 13 further comprising computer program instructions that, when executed, cause the computer to carry out the steps of:

receiving a request to store the data object;

determining that a copy of the data object resides within the first data tier; and

responsive to determining that the copy of the data object resides within the first data tier, storing an additional copy of the data object in the second data tier.

18. The computer program product of claim 13 further comprising computer program instructions that, when executed, cause the computer to carry out the steps of:

determining that a number of copies of the data object that are stored in the first data tier are not sufficient to service requests to retrieve the data object; and

responsive to determining that a number of copies of the data object that are stored in the first data tier are not sufficient to service requests to retrieve the data object, migrating one or more copies of the data object that are stored in the second data tier to the first data tier.

Assignments (3)
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS Recorded Jun 11, 2025
From: BARCLAYS BANK PLC, AS ADMINISTRATIVE AGENT
To: PURE STORAGE, INC.
Reel/Frame 071558/0523 →
SECURITY INTEREST Recorded Aug 26, 2020
From: PURE STORAGE, INC.
To: BARCLAYS BANK PLC AS ADMINISTRATIVE AGENT
Reel/Frame 053867/0581 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 28, 2019
From: FISHER, JAMES
To: PURE STORAGE, INC.
Reel/Frame 050194/0718 →
Cited By (4)
US 12,261,905 US 12,361,017 US 12,367,320 US 12,498,871