US2017052713A1PendingUtilityA1

System and method to read cache data on hybrid aggregates based on physical context of the data

Assignee: NETAPP INCPriority: Aug 20, 2015Filed: Aug 20, 2015Published: Feb 23, 2017
Est. expiryAug 20, 2035(~9.1 yrs left)· nominal 20-yr term from priority
Inventors:Manish Katiyar
G06F 3/0611G06F 3/0665G06F 3/0685G06F 3/0619G06F 3/0689
46
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

Presented herein are methods, non-transitory computer readable media, and devices for writing, allocating, and caching contents of a hard disk drive block on a solid state drive cache in a memory system, without requiring an inode context. The method includes: identifying one or more HDD blocks for caching by a storage server; assigning a physical block number to each identified HDD block; linking the identified HDD blocks to one another; allocating an SSD physical block number for each linked HDD block; and storing the physical block number for each identified HDD block and the physical block number for each corresponding SSD block within a cache map.

Claims

exact text as granted — not AI-modified
What is claimed: 
     
         1 . A method for caching contents of a hard disk drive (HDD) on a solid-state drive SSD cache in a memory system comprising:
 identifying one or more HDD blocks for caching by a storage server;   assigning a physical block number to each identified HDD block;   linking the identified HDD blocks to one another;   allocating an SSD physical block number for each linked HDD block; and   storing the physical block number for each identified HDD block and the physical block number for each corresponding SSD block within a cache map.   
     
     
         2 . The method of  claim 1  wherein identifying an HDD block comprises identifying the HDD block based on read frequency. 
     
     
         3 . The method of  claim 1  wherein identifying an HDD block comprises identifying the HDD block based on frequently read randomly. 
     
     
         4 . The method of  claim 1  wherein identifying an HDD block comprises identifying the HDD block based on frequency of access or nature of the access. 
     
     
         5 . The method of  claim 1  wherein the physical block number identifies a block's location within the hybrid storage aggregate. 
     
     
         6 . The method of  claim 1  wherein assigning a physical block number comprises:
 locking a page associated with the HDD block in a multiprocessor-safe fashion; 
 queuing the page in a tracking list and grouping the page with a plurality of pages found in the memory system; and 
 assigning the locked pages a physical block number. 
 
     
     
         7 . A computing device comprising:
 a memory containing machine readable medium comprising machine executable code having stored thereon instructions for performing a method for caching contents of a hard disk drive (HDD) on a solid-state drive SSD cache in a memory system;   a processor coupled to the memory, the processor configured to execute the machine executable code to cause the processor to:
 identify one or more HDD blocks for caching; 
 assign a physical block number to each identified HDD block; 
 link the identified HDD blocks to one other; 
 allocate an SSD physical block number for each linked HDD block; and 
 store the physical block number for each identified HDD block and the physical block number for each corresponding SSD block within a cache map. 
   
     
     
         8 . The computing device of  claim 7  wherein the HDD block is identified based on read frequency. 
     
     
         9 . The computing device of  claim 7  wherein the HDD block is identified based on frequently read randomly. 
     
     
         10 . The computing device of  claim 7  wherein the HDD block is identified based on frequency of access or nature of the access. 
     
     
         11 . The computing device of  claim 7  wherein the physical block number identifies the block's location within the hybrid storage aggregate. 
     
     
         12 . The computing device of  claim 7  wherein the processor configured to execute the machine executable code to cause the processor to assign the physical block number further comprises causing the processor to:
 lock a page associated with the HDD block in a multiprocessor-safe fashion; 
 queue the page in a tracking list and grouping the page with a plurality of pages found in the memory system; and 
 assign the locked pages a physical block number. 
 
     
     
         13 . A non-transitory machine-readable medium having stored thereon instructions for performing a method comprising machine executable code which when executed by at least one machine, causes the machine to:
 identify one or more HDD blocks for caching;   assign a physical block number to each identified HDD block;   link the identified HDD blocks to one another;   allocate an SSD physical block number for each linked HDD block; and   store the physical block number for each identified HDD block and the physical block number for each corresponding SSD block within a cache map.   
     
     
         14 . The non-transitory machine-readable medium of  claim 13  wherein the HDD block is identified based on read frequency. 
     
     
         15 . The non-transitory machine-readable medium of  claim 13  wherein the HDD block is identified based on frequently read randomly. 
     
     
         16 . The non-transitory machine-readable medium of  claim 13  wherein the HDD block is identified based on frequency of access or nature of the access. 
     
     
         17 . The non-transitory machine-readable medium of  claim 13  wherein the physical block number identifies the block's location within the hybrid storage aggregate. 
     
     
         18 . The non-transitory machine-readable medium of  claim 13  wherein assigning the physical block number comprises:
 lock a page associated with the HDD block in a multiprocessor-safe fashion; 
 queue the page in a tracking list and grouping the page with a plurality of pages found in the memory system; and 
 assign the locked pages a physical block number.

Join the waitlist — get patent alerts

Track US2017052713A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.