IP Library Granted Patent US 9,696,913
Granted Patent B1
US 9,696,913 · App. 14/684,536 · Granted Jul 4, 2017

Tier-optimized write scheme

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 9,696,913
App. No.
14/684,536
Granted
Jul 4, 2017
Kind
B1
Abstract

Techniques are disclosed for storing data in a plurality of storage tiers on a computing node. A node receives a request to write data corresponding to at least a first portion of a file. The node determines whether to perform the request either as an in-place write or as an out-of-place write. Upon determining to perform the request as the in-place write, the node writes the data to a first location on a storage tier which currently stores the first portion of the file. Upon determining to perform the request as the out-of-place write, the node writes the data to a second location on one of the storage tiers, other than the first location.

Claims (50)

1. A method for storing data in a plurality of storage tiers on a computing node, the method comprising:

receiving a request to write data corresponding to at least a first portion of a file;

determining whether to perform the request either as an in-place write or as an out-of-place write, wherein the in-place write comprises a write to a low latency storage device and the out-of-place write comprises a write to a higher latency storage device;

upon determining to perform the request as the in-place write, writing the data to a first location on a storage tier which currently stores the first portion of the file; and

upon determining to perform the request as the out-of-place write, writing the data to a second location on one of the storage tiers, other than the first location.

2. The method of claim 1 , wherein determining to perform the request as the out-of-place write comprises:

determining that the first portion of the file corresponds to a deduplicated portion.

3. The method of claim 1 , wherein determining to perform the request as the out-of-place write comprises:

determining that the first portion of the file corresponds to a compressed group of portions from one or more files.

4. The method of claim 1 , further comprising:

recording a pattern of I/O operations to portions of the file.

5. The method of claim 4 , further comprising:

determining, based on the recorded pattern of the I/O operations, whether to perform the request as either the in-place write or as the out-of-place write.

6. The method of claim 5 , wherein determining, based on the recorded pattern of the I/O operations, whether to perform the request as the out-of-place write comprises:

determining that the recorded pattern of I/O operations corresponds to a sequential pattern of I/O operations.

7. The method of claim 5 , further comprising:

determining, based on the recorded pattern of the I/O operations, whether to write the data to the first location on the storage tier which currently stores the first portion of the file or to the second location on one of the storage tiers, other than the first location.

8. The method of claim 1 , wherein the computing node is a node of a secondary storage system.

9. A non-transitory computer-readable storage medium storing instructions that, when executed by a processor, cause the processor to perform an operation for storing data in a plurality of storage tiers on a computing node, the operation comprising:

receiving a request to write data corresponding to at least a first portion of a file;

determining whether to perform the request either as an in-place write or as an out-of-place write, wherein the in-place write comprises a write to a low latency storage device and the out-of-place write comprises a write to a higher latency storage device;

upon determining to perform the request as the in-place write, writing the data to a first location on a storage tier which currently stores the first portion of the file; and

upon determining to perform the request as the out-of-place write, writing the data to a second location on one of the storage tiers, other than the first location.

10. The computer-readable storage medium of claim 9 , wherein determining to perform the request as the out-of-place write comprises:

determining that the first portion of the file corresponds to a deduplicated portion.

11. The computer-readable storage medium of claim 9 , wherein determining to perform the request as the out-of-place write comprises:

determining that the first portion of the file corresponds to a compressed group of portions from one or more files.

12. The computer-readable storage medium of claim 9 , wherein the operation further comprises:

recording a pattern of I/O operations to portions of the file.

13. The computer-readable storage medium of claim 12 , wherein the operation further comprises:

determining, based on the recorded pattern of the I/O operations, whether to perform the request as either the in-place write or as the out-of-place write.

14. The computer-readable storage medium of claim 13 , wherein determining, based on the recorded pattern of the I/O operations, whether to perform the request as the out-of-place write comprises:

determining that the recorded pattern of I/O operations corresponds to a sequential pattern of I/O operations.

15. A system, comprising:

a processor; and

a memory storing program code, which, when executed on the processor, performs an operation for storing data in a plurality of storage tiers on a computing node, the operation comprising:

receiving a request to write data corresponding to at least a first portion of a file,

determining whether to perform the request either as an in-place write or as an out-of-place write, wherein the in-place write comprises a write to a low latency storage device and the out-of-place write comprises a write to a higher latency storage device,

upon determining to perform the request as the in-place write, writing the data to a first location on a storage tier which currently stores the first portion of the file, and

upon determining to perform the request as the out-of-place write, writing the data to a second location on one of the storage tiers, other than the first location.

16. The system of claim 15 , wherein determining to perform the request as the out-of-place write comprises:

determining that the first portion of the file corresponds to a deduplicated portion.

17. The system of claim 15 , wherein determining to perform the request as the out-of-place write comprises:

determining that the first portion of the file corresponds to a compressed group of portions from one or more files.

18. The system of claim 15 , wherein the operation further comprises:

recording a pattern of I/O operations to portions of the file; and

determining, based on the recorded pattern of the I/O operations, whether to perform the request as either the in-place write or as the out-of-place write.

19. The system of claim 18 , wherein determining, based on the recorded pattern of the I/O operations, whether to perform the request as the out-of-place write comprises:

determining that the recorded pattern of I/O operations corresponds to a sequential pattern of I/O operations.

20. The system of claim 15 , wherein the computing node is a node of a secondary storage system.

Assignments (4)
TERMINATION AND RELEASE OF INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Dec 10, 2024
From: FIRST-CITIZENS BANK & TRUST COMPANY (AS SUCCESSOR TO SILICON VALLEY BANK)
To: COHESITY, INC.
Reel/Frame 069584/0498 →
SECURITY INTEREST Recorded Dec 9, 2024
From: VERITAS TECHNOLOGIES LLC; COHESITY, INC.
To: JPMORGAN CHASE BANK. N.A.
Reel/Frame 069890/0001 →
SECURITY INTEREST Recorded Sep 23, 2022
From: COHESITY, INC.
To: SILICON VALLEY BANK, AS ADMINISTRATIVE AGENT
Reel/Frame 061509/0818 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 13, 2015
From: ARON, MOHIT; SHANMUGANATHAN, GANESHA
To: COHESITY, INC.
Reel/Frame 035391/0795 →