US2018011657A1PendingUtilityA1

Use of predefined block pointers to reduce duplicate storage of certain data in a storage subsystem of a storage server

Assignee: NETAPP INCPriority: Feb 26, 2009Filed: Sep 25, 2017Published: Jan 11, 2018
Est. expiryFeb 26, 2029(~2.5 yrs left)· nominal 20-yr term from priority
G06F 2206/1014G06F 12/0871G06F 3/0641G06F 3/0679G06F 2212/222G06F 3/0619G06F 11/1453G06F 16/1748G06F 16/1824G06F 16/24G06F 3/067G06F 3/0608G06F 17/30197G06F 17/30386G06F 17/30156
61
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

A method and system for eliminating the redundant allocation and deallocation of special data on disk, wherein the redundant allocation and deallocation of special data on disk is eliminated by providing an innovate technique for specially allocating special data of a storage system. Specially allocated data is data that is pre-allocated on disk and stored in memory of the storage system. “Special data” may include any pre-decided data, one or more portions of data that exceed a pre-defined sharing threshold, and/or one or more portions of data that have been identified by a user as special. For example, in some embodiments, a zero-filled data block is specially allocated by a storage system. As another example, in some embodiments, a data block whose contents correspond to a particular type document header is specially allocated.

Claims

exact text as granted — not AI-modified
We claim: 
     
         1 . A method comprising:
 receiving a request to read a data set stored on a computer-readable storage medium of a server, the data set including a plurality of data blocks, each of the data blocks having a pointer identifying a location of the corresponding data block on a storage device of the server; and   for each of the plurality of data blocks, determining if the pointer of the data block matches a pointer that is designated as identifying, on the storage device, a pre-allocated storage location for storage of a data block that contains data having a predetermined characteristic;   in an event that the pointer is determined to match a designated pointer, retrieving the data block with the matching pointer from memory of the server without issuing a request to read the data block from the storage device.   
     
     
         2 . The method of  claim 1  wherein the designated pointer is a pointer to a level one indirect block. 
     
     
         3 . The method of  claim 1  wherein the designated pointer is a PVBN/VVBN pair. 
     
     
         4 . The method of  claim 1  wherein the server includes a deduplication process, and wherein no data block stored on the storage device of the server and having a matching pointer is deduplicated. 
     
     
         5 . A server, comprising:
 a storage device;   a memory containing machine readable medium comprising machine executable code having stored thereon instructions for performing a method of reading specially allocated data; and   a processor coupled to the memory, the processor configured to execute the machine executable code to:   receive a request to read a data set stored on the machine readable storage medium of the server, the data set including a plurality of data blocks, each of the data blocks having a pointer identifying a location of the corresponding data block on the storage device of the server; and   for each of the plurality of data blocks, determining if the pointer of the data block matches a pointer that is designated as identifying, on the storage device, a pre-allocated storage location for storage of a data block that contains data having a predetermined characteristic;   in an event that the pointer is determined to match the designated pointer, retrieve the data block with the matching pointer from memory of the storage server without issuing a request to read the data block from the storage device.   
     
     
         6 . The server of  claim 5  wherein the designated pointer is a pointer to a level one indirect block. 
     
     
         7 . The server of  claim 5  wherein the designated pointer is a PVBN/VVBN pair. 
     
     
         8 . The storage server of  claim 5  wherein the processor is further configured to execute the machine executable code to perform a deduplication process, and wherein no data block stored on the storage device of the server and having a matching pointer is deduplicated. 
     
     
         9 . The method of  claim 1 , wherein the predetermined characteristic is of a header file. 
     
     
         10 . The method of  claim 1 , wherein the predetermined characteristic is of a zero-filled block of data. 
     
     
         11 . The server of  claim 5 , wherein the predetermined characteristic is of a header file. 
     
     
         12 . The server of  claim 5 , wherein the predetermined characteristic is of a zero-filled block of data.

Join the waitlist — get patent alerts

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

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