Patent ID: 9037541
Filing Date: 2015-05-19
Classification: G06F

Abstract:
1. At a computer system, the computer system connected to a plurality of storage devices, the plurality of storage devices included in a defined storage array, configuration of the storage array defined by array metadata, the array metadata defining locations for a plurality of files within the storage array, a method for maintaining array metadata for the storage array, the method comprising: receiving data from a file management system for storage in the storage array, the data associated with a file; identifying file metadata corresponding to the file; referring to a storage policy for the storage array to determine how to store the received data in the storage array, the storage policy defining how different portions of data, including at least the received data and the array metadata, are to be stored on the plurality of storage devices based on corresponding metadata for the different portions of data, the storage policy defining that the array metadata is to be duplicated on every storage device included in the plurality of storage devices; storing a portion of the received data at one or more storage devices, the one or more storage devices including less than all of the plurality of storage devices such that the portion of received data is not stored at at least one other storage device from among the plurality of storage devices, the portion of the received data stored in accordance with the storage policy and based on the identified file metadata; determining that storing the received data has changed file storage locations within the one or more storage devices; updating array metadata to reflect the changed file storage locations; referring to the storage policy to determine that the updated array metadata is to be duplicated on every storage device included in the one or more storage devices and also duplicated to the at least one other storage device; and propagating the updated array metadata for storage at every storage device in the one or more storage devices and for storage at the at the least one other storage device in accordance with the storage policy such that every storage device in the plurality of storage devices stores the location of files at every other of storage devices in the plurality of storage devices, propagating the updated array metadata including propagating a file location for at least one file to at least one storage device of the storage array that does not store any portion of the at least one file.