Fast Data Initialization
First Claim
1. A method comprising:
- receiving an initialization request to create or extend a file, wherein the initialization request comprises or identifies file template metadata;
allocating a set of allocation units comprising at least one allocation unit for the file on a primary storage medium without initializing at least a portion of the file on the primary storage medium;
storing the file template metadata in at least one of a volatile memory cache and a persistent memory cache;
receiving a second request corresponding to a particular allocation unit of the set of allocation units;
obtaining particular file template metadata associated with the particular allocation unit; and
in response to the second request, generating at least a portion of the particular allocation unit;
wherein the method is performed by one or more computing devices.
1 Assignment
0 Petitions
Accused Products
Abstract
A method and system for fast file initialization is provided. An initialization request to create or extend a file is received. The initialization request comprises or identifies file template metadata. A set of allocation units are allocated, the set of allocation units comprising at least one allocation unit for the file on a primary storage medium without initializing at least a portion of the file on the primary storage medium. The file template metadata is stored in a cache. The cache resides in at least one of volatile memory and persistent flash storage. A second request is received corresponding to a particular allocation unit of the set of allocation units. Particular file template metadata associated with the particular allocation unit is obtained. In response to the second request, at least a portion of a new allocation unit is generated.
48 Citations
20 Claims
-
1. A method comprising:
-
receiving an initialization request to create or extend a file, wherein the initialization request comprises or identifies file template metadata; allocating a set of allocation units comprising at least one allocation unit for the file on a primary storage medium without initializing at least a portion of the file on the primary storage medium; storing the file template metadata in at least one of a volatile memory cache and a persistent memory cache; receiving a second request corresponding to a particular allocation unit of the set of allocation units; obtaining particular file template metadata associated with the particular allocation unit; and in response to the second request, generating at least a portion of the particular allocation unit; wherein the method is performed by one or more computing devices. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 18)
-
-
10. A non-transitory computer-readable medium storing instructions which, when executed by one or more processors, cause the one or more processors to:
-
receive an initialization request to create or extend a file, wherein the initialization request comprises or identifies file template metadata; allocate a set of allocation units comprising at least one allocation unit for the file on a primary storage medium without initializing at least a portion of the file on the primary storage medium; store the file template metadata in at least one of a volatile memory cache and a persistent memory cache; receive a second request corresponding to a particular allocation unit of the set of allocation units; obtain particular file template metadata associated with the particular allocation unit; and in response to the second request, generating at least a portion of the particular allocation unit. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17)
-
-
19. A system comprising:
-
a plurality of primary storage devices comprising a plurality of allocation units; a plurality of persistent cache devices; volatile memory; one or more processors configured to; receive an initialization request to create or extend a file, wherein the initialization request is associated with file template metadata; allocate a set of allocation units of the plurality of allocation units for the file without initializing the file on the primary storage medium; store the file template metadata in the volatile memory; receive a read request corresponding a first allocation unit of the set of allocation units; in response to the read request, generate at least one block of the particular allocation unit based on the file template metadata. - View Dependent Claims (20)
-
Specification