IP Library › Granted Patent US 10,417,181
Granted Patent B2
US 10,417,181 · App. 15/307,457 · Granted Sep 17, 2019

Using location addressed storage as content addressed storage

Inventors: Ramesh Kannan Karuppusamy (Bangalore, IN); Rajkumar Kannan (Bangalore, IN)
Assignee: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
G06F16/152G06F11/1004G06F16/122G06F16/13G06F16/137
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 10,417,181
App. No.
15/307,457
Granted
Sep 17, 2019
Kind
B2
Abstract

Some examples describe a method for using location addressed storage as content addressed storage (CAS). A checksum of a file may be generated during transition of the file to a retained state. The generated checksum, which may represent a content address of the file, may be stored in a database. The database may be queried with the content address of the file to retrieve a location address of the file corresponding to the content address of the file. The location address of the file is used to provide access to the file in the file system.

Claims (56)

1. A method of using location addressed storage as content addressable storage (CAS), comprising:

generating, by a processor, a checksum of a file during transition of a file to a retained state in a file system;

storing, by the processor, the generated checksum in a database, wherein the checksum represents a content address of the file in the database;

storing in the database, by the processor, a location address of the file mapped to the content address of the file;

querying, by the processor, the database with the content address, the content address being provided for the querying by a client application requesting access to the file;

retrieving from the database, by the processor, the location address of the file mapped in the database to the content address of the file; and

using, by the processor, the location address retrieved from the database to provide access to the file in the file system to the client application, wherein the client application accesses the file in the file system based on the location address.

2. The method of claim 1 , wherein using the location address retrieved from the database to provide access to the file in the file system includes:

performing a search for the file in the file system using the location address of the file;

retrieving a file handle of the file from the file system; and

sharing the file handle of the file with the client application requesting access to the file, wherein the client application accesses the file at the file system using the file handle retrieved based on the location address.

3. The method of claim 1 , wherein the database is integrated into the file system.

4. The method of claim 1 , wherein the content address of the file is received from an application requesting access to the file in the file system.

5. The method of claim 1 , wherein the client application is a content addressable storage (CAS) client application.

6. The method of claim 1 , wherein the database has a pipelined architecture that batches updates that are decoupled from queries, and the database has multiple stages that can be queried independently.

7. The method of claim 1 , wherein

the file prior to transition to the retained state is subject to content change and is location addressable, and

the file in the retained state cannot be modified and is content addressable.

8. A system comprising:

a database to store a hash of a file;

a processor; and

a machine-readable medium storing instructions that, when executed, cause the processor to,

generate the hash of the file during transition of the file to a retained state in a scale-out file system, wherein the hash represents a content address of the file in the database,

store the hash of the file in the database,

store, in the database, a location address of the file mapped to the hash of the file,

query the database with the content address of the file in response to a request from a client application to access the file, wherein the request identifies the file by the content address,

retrieve the location address of the file mapped to the content address of the file from the database, and

use the location address of the file to provide access to the file in the scale-out file system to the client application, wherein the client application accesses the file in the scale-out file system based on the location address.

9. The system of claim 8 , wherein the client application is present on a communicatively coupled client system.

10. The system of claim 8 , wherein the machine-readable medium stores instructions that, when executed, cause the processor to:

perform a search for the file in the file system using the location address of the file,

retrieve a file handle of the file from the file system, and

share the file handle of the file with the client application requesting access to the file, client application accesses the file using the file handle retrieved based on the location address.

11. The system of claim 8 , wherein the machine-readable medium stores instructions that, when executed, cause the processor to:

generate a journal for the hash generated during transition of the file to the retained state, and

process the journal by storing the hash of the file in the database.

12. The system of claim 8 , wherein the database has a pipelined architecture that batches updates that are decoupled from queries, and the database has multiple stages that can be queried independently.

13. The system of claim 8 , wherein

the file prior to transition to the retained state is subject to content change and is location addressable, and

the file in the retained state cannot be modified and is content addressable.

14. A non-transitory machine-readable storage medium comprising instructions executable by a processor to:

generate a checksum of a file during transition of a file to a retained state in a file system;

store the generated checksum in a database embedded within the file system, wherein the checksum represents a content address of the file in the database;

store in the database a location address of the file mapped to the content address of the file;

query the database with the content address of the file, the content address being provided by a client application requesting access to the file;

retrieve from the database the location address of the file mapped in the database to the content address of the file; and

use the location address retrieved from the database to provide access to the file in the file system to the client application, wherein the client application accesses the file in the file system based on the location address.

15. The storage medium of claim 14 , wherein the instructions to use the location address of the file to provide access to the file in the file system comprise instructions to:

perform a search for the file in the file system using the location address of the file;

retrieve a file handle of the file from the file system; and

share the file handle of the file with the client application requesting access to the file, wherein the client application accesses the file at the file system using the file handle retrieved based on the location address.

16. The storage medium of claim 14 , wherein the file system is a Network Attached Storage (NAS) file system.

17. The storage medium of claim 14 , wherein the database is to allow pipelining of updates and independent querying of the pipelined updates.

18. The storage medium of claim 14 , wherein

the file prior to transition to the retained state is subject to content change and is location addressable, and

the file in the retained state cannot be modified and is content addressable.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 11, 2017
From: KARUPPUSAMY, RAMESH KANNAN; KANNAN, RAJKUMAR
To: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
Reel/Frame 041338/0944 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 11, 2017
From: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
To: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
Reel/Frame 041339/0092 →
Priority Claims (1)
IN 2575/CHE/2014 · May 23, 2014 · national
Continuity (1)
Related Publication 20170052972A1 · Feb 23, 2017