Abstract:
PROBLEM TO BE SOLVED: To provide a system for shortening time necessary for recalculating a parity after the system fails and for preventing data in a RAID array from being destructed. SOLUTION: The storage subsystem is provided with: a RAID array including a plurality of disks for recording a plurality of stripe data and parity information; a non-volatile memory independent from the disks; and a RAID controller for responding to a write processing request by storing stripe information including information for specifying a stripe in the RAID array in the non-volatile memory. The stripe information includes stripe number information, and the RAID controller recalculates only a parity for the specific stripe by using the stripe information after system failure generated before the completion of write processing and restores the RAID array to a suitable state without recalculating the parities of other stripes. COPYRIGHT: (C)2007,JPO&INPIT
Abstract:
PROBLEM TO BE SOLVED: To provide a system for shortening time necessary for recalculating a parity after the system fails and for preventing data in a RAID array from being destructed. SOLUTION: The storage subsystem is provided with: a RAID array including a plurality of disks for recording a plurality of stripe data and their parity values; a non-volatile memory for storing immediately preceding stripe data to be updated by a write processing; and a RAID controller configured to store an existing immediately preceding stripe data stored in the non-volatile memory before the write processing is performed. The RAID controller calculates an update parity information to the destructed specified stripe by using the existing data in the non-volatile memory to the data block of the stripe determined to be indecipherable due to the failure of the system and the data read out from the data block of the decipherable stripe. COPYRIGHT: (C)2009,JPO&INPIT
Abstract:
PROBLEM TO BE SOLVED: To integrate a file system with a RAID array so as to export precise information about the arrangement of data blocks in the RAID subsystem. SOLUTION: Individual CWL pointers are used for each disk 1022 in the disk array 1030. The algorithm aims to improve efficiency of RAID and read-out performance. For the above purpose, it always writes on the disk 1022 with the lowest CWL pointer. In addition, another disk is chosen only when space for a new file is start to be allocated or when N blocks on the same disk 1022 has been allocated for a single file. The result is that CWL pointers are never more than N blocks apart even on different disks 1024, and a large file can also be allocated in N consecutive blocks on the same disk 1022. COPYRIGHT: (C)2006,JPO&NCIPI
Abstract:
The invention provides a method and system for enforcing file access control among client devices using multiple diverse access control models and multiple diverse file server protocols. A multi-protocol file server identifies each file with one particular access control model out of a plurality of possible models, and enforces that one particular model for all accesses to that file. When the file server receives a file server request for that file using a different access control model, the file server translates the access control limits for that file into no-less-restrictive limits in the different model. The file server restricts access by the client device using the translated access control limits. Each file is assigned the access control model of the user who created the file or who last set access control limits for the file. When a user having a different access control model sets access control limits, the access control model for the file is changed to the new model. Files are organized in a tree hierarchy, in which each tree is limited to one or more access control models (which can limit the ability of users to set access control limits for files in that tree). Each tree can be limited to NT-model-only format, Unix-model-only format, or mixed NT-or-Unix-models format.
Abstract:
A system and method enables a storage system to support multiple volume type simultaneously. A volume type field is contained within a file system information block that permits the storage system to determine the type of volume of a particular volume associated therewith. The storage operating system may then interpret various on-disk data structures in accordance with the appropriate volume type.
Abstract:
The invention provides a method and system for enforcing file access control among client devices using multiple diverse access control models and multiple diverse file server protocols. A multi-protocol file server identifies each file with one particular access control model out of a plurality of possible models, and enforces that one particular model for all accesses to that file. When the file server receives a file server request for that file using a different access control model, the file server translates the access control limits for that file into no-less-restrictive limits in the different model. The file server restricts access by the client device using the translated access control limits. Each file is assigned the access control model of the user who created the file or who last set access control limits for the file. When a user having a different access control model sets access control limits, the access control model for the file is changed to the new model. Files are organized in a tree hierarchy, in which each tree is limited to one or more access control models (which can limit the ability of users to set access control limits for files in that tree). Each tree can be limited to NT-model-only format, Unix-model-only format, or mixed NT-or-Unix-models format.
Abstract:
The present invention is a method for integrating a file system with a RAID array (1030) that exports precise information about the arrangement of data blocks in the RAID subsystem (1030). The system uses explicit knowledge of the underlying RAID disk layout to schedule disk allocation. The present invention uses separate current-write location (CWL) pointers for each disk (1022) in the disk array (1030) where the pointers simply advance through disks (1022) as writes occur. The algorithm used has two primary goals. The first goal is to keep the CWL pointers as close together as possible, thereby improving RAID (1030) efficiency by writing to multiple blocks in the stripe simultaneously. The second goal is to allocate adjacent blocks of a file on the same disk (1022), thereby improving read back performance. The first goal is satisfied by always writing on the disk (1022) with the lowest CWL pointer. For the second goal, another disk (1024) is chosen only when the algorithm starts allocating space for a new file, or when it has allocated N blocks on the same disk (1022) for a single file. The result is that CWL pointers are never more than N blocks apart on different disks (1024), and large files have N consecutive blocks on the same disk (1022).