Patent ID: 6629203
Filing Date: 2003-09-30
Classification: G06F

Abstract:
A method of managing computer storage in a data storage system having at least one storage device containing at least one logical volume for storing data, the logical volume including storage spaces containing the data and containing directories in a hierarchical directory structure that includes a top-level directory, and the data storage system using the directories to access the data in response to data access requests received by the data storage system, comprising the steps of:creating the logical volume on the storage device with a plurality of the storage spaces; for each directory in the hierarchical directory structure of the logical volume, allocating a pair of the storage spaces in the logical volume; for each directory in the hierarchical directory structure, storing a first useable instance of the directory in the first of the storage spaces of the pair of storage spaces for the directory; storing a first data in the logical volume; linking the top-level directory through the hierarchical directory structure to the first data; making the first useable instances of the directories available to respond to the data access requests; receiving a request to add second data, in addition to the first data, to the logical volume; determining selected ones of the directories, including the top-level directory, that are to be changed due to adding the second data; for each directory to be changed, storing a first updated instance of the directory to a second storage space of the pair of storage spaces allocated for the directory; retaining the first useable instances of the directories as available to use to respond to the data access requests; storing the second data in a logical volume; linking the first updated instance of the top-level directory through any other updated instances of the directories in the hierarchical directory structure to the second data, in addition to the first data; switching the first updated instances of the directories to being second useable instances of the directories by switching the first updated instance of the top-level directory to being a second useable instance of the top-level directory; making the second useable instances of the directories available to respond to the data access requests; and keeping the first storage space of each pair of storage spaces allocated for the directories, wherein said first storage space and the second storage space of said pair of storage spaces may be alternatively written.