IP Library › Granted Patent US 11,704,073
Granted Patent B2
US 11,704,073 · App. 17/213,761 · Granted Jul 18, 2023

Ownership determination for accessing a file

Inventors: John Hayes (Mountain View, CA); Robert Lee (San Carlos, CA); Igor Ostrovsky (Mountain View, CA); Peter Vajgel (Menlo Park, CA)
Assignee: PURE STORAGE, INC
G06F3/0679G06F16/182
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,704,073
App. No.
17/213,761
Filed
Mar 26, 2021
Granted
Jul 18, 2023
Kind
B2
Art Unit
2166
USPC
707/755
Abstract

A method for accessing a file in a storage system is provided. The method includes determining, for each file chunk of the file, an authority among differing storage nodes of the storage system and receiving from the authority having ownership of the file chunk, location information for the file chunk. The method includes accessing file chunks of the file as directed by each of the determined authorities.

Claims (30)

1. A method, comprising:

determining for each file chunk of a file, ownership of each file chunk based on a hash calculation performed on metadata of a corresponding file chunk, wherein ownership of file chunks of the file is distributed across storage nodes of a storage system;

receiving, from the owner of the file chunk, location information for the file chunk; and

accessing file chunks of the file as directed by each of the determined owners, wherein the determining, the receiving and the accessing are executed through a processor of the storage system.

2. The method of claim 1 , wherein the determining includes performing a hash calculation on an identifier of the file and an offset of the file chunk.

3. The method of claim 1 , wherein each storage node includes multiple owners.

4. The method of claim 1 , wherein differing ones of the plurality of storage nodes of the storage system contain differing owners for differing file chunks of the file.

5. The method of claim 1 , wherein the metadata includes an inode number of the file and an offset of the file chunk.

6. The method of claim 1 , wherein the ownership distributed across the storage nodes directs data recovery in case of failure of a storage node.

7. The method of claim 1 , wherein the determining for each file chunk is not centralized in the storage system.

8. A method, comprising:

determining one of a plurality of owners as having ownership of a file chunk of a file, the determining performed at differing storage nodes for each of a plurality of file chunks of the file, with file chunks of the file distributed across the plurality of storage nodes and wherein the determining includes performing a hash calculation on metadata associated with corresponding file chunk; and

accessing the plurality of file chunks of the file as directed by determined owners, wherein the determining and the accessing are executed through a processor of a storage system.

9. The method of claim 8 , wherein each storage node includes multiple owners.

10. The method of claim 8 , wherein the determining comprises:

performing the hash calculation on a file offset for the file chunk and on an inode number of the file, wherein a result of the hash calculation identifies one of the plurality of owners as having the ownership of the file chunk.

11. The method of claim 8 wherein the metadata includes an identifier of the file and an offset of the file chunk.

12. The method of claim 8 , the determining is not centralized in the storage system.

13. The method of claim 8 , wherein the plurality of owners direct data recovery in case of failure of a storage node.

14. A storage system, comprising:

a plurality of storage nodes coupled as a storage cluster;

at least a portion of the plurality of storage nodes configured to have at least one owner having ownership of a subset of file chunks of a file and associated with determining how and where each file chunk of the subset of file chunks is stored in the storage system and the subset of file chunks is distributed across the storage nodes; and

each of the plurality of storage nodes configured to perform a hash calculation based on a metadata associated with corresponding file chunk, wherein a result of the hash calculation indicates location information for the file chunk.

15. The system of claim 14 , wherein each owner directs data recovery in case of failure of a storage node.

16. The system of claim 14 , further comprising:

each of the plurality of storage nodes configured to apply a result of the hash calculation to a lookup table, to determine an owner having the location information.

17. The system of claim 14 , wherein the result of the hash calculation indicates one of the plurality of storage nodes having the owner.

18. The system of claim 14 , wherein the metadata includes an inode number of the file and an offset of the file chunk.

19. The system of claim 14 , wherein each of the plurality of storage nodes including a logical construct of a compute agent holding storage information.

20. The system of claim 14 , wherein each storage node of the plurality of storage nodes includes flash memory and wherein each storage node includes multiple owners.

Continuity (2)
Continuation 14798371 · Jul 13, 2015
Related Publication 20210216249A1 · Jul 15, 2021