Patent application number | Description | Published |
20080320142 | METHOD AND APPARATUS FOR OFFLOADING NETWORK PROCESSES IN A COMPUTER STORAGE SYSTEM - A system and method for offloading network processes from main processors of a storage system and performing them on parallel processing modules. Embodiments of the present invention improve performance of a clustered storage system by performing certain network processes in an accelerator module of a storage system node. The accelerator module receives multi-protocol protocol data units (PDUs) from a network interface, performs protocol operations on the PDUs to form file system requests and passes the file system requests to a local D-module. If a file system request is directed to a non-local D-module in the cluster, the accelerator module repackages the request for transmission to the appropriate D-module and passes it back to the network without using local D-module processing resources or passing data over the system bus. | 12-25-2008 |
20090024814 | PROVIDING AN ADMINISTRATIVE PATH FOR ACCESSING A WRITEABLE MASTER STORAGE VOLUME IN A MIRRORED STORAGE ENVIRONMENT - A technique provides an administrative path for accessing a writeable master storage volume in a mirrored storage environment. Illustratively, a writeable master storage volume stores a master set of data addressable by a corresponding pathname, and zero or more read-only (e.g., load-balancing) mirrored storage volumes are configured to store a mirrored set of the master set of data, the mirrored set also addressable by the corresponding pathname. Clients may read data from either the master storage volume or one of the mirrored storage volumes (e.g., according to a configured access location, such as a local mirrored volume if one exists) by issuing read requests having the corresponding pathnames. Also, each client may specifically access the master set of data from the master storage volume by issuing an access (e.g., read/write) request having a specified master storage volume pathname prefix prepended to the corresponding pathname. | 01-22-2009 |
20090070345 | Method and apparatus for data storage using striping specification identification - An apparatus for data storage includes a cluster of NFS servers. Each server has network ports for incoming file system requests and cluster traffic between servers. The apparatus includes a plurality of storage arrays in communication with the servers. The servers utilize a striped file system for storing data. A method for data storage. A method for establishing storage for a file. A method for removing a file from storage. A method for reading data in a file. A method for writing data in a file. | 03-12-2009 |
20090271459 | Method and system for responding to file system requests - A system for responding to file system requests having file IDs comprising V, a volume identifier specifying the file system being accessed, and R, an integer, specifying the file within the file system being accessed. The system includes D disk elements in which files are stored, where D is greater than or equal to 1 and is an integer. The system includes a switching fabric connected to the D disk elements to route requests to a corresponding disk element. The system includes N network elements connected to the switching fabric. Each network element has a mapping function that for every value of V, specifies one or more elements from the set D that store the data specified by volume V, where N is greater than or equal to 1 and is an integer and N+D is greater than or equal to 3, which receives the requests and causes the switching fabric to route the requests by their file ID according to the mapping function. A method for responding to file system requests. The method includes the steps of receiving file system requests having file IDs comprising V, a volume identifier specifying the file system being accessed, and R, an integer, specifying the file within the file system being accessed at network elements. Each network element has a mapping function that for every value of V, specifies one or more elements from the set D that store the data specified by volume V. Then there is the step of routing the requests to a switching fabric connected to the network elements based on the file system request's ID according to the mapping function to disk elements connected to the switching fabric. | 10-29-2009 |
20100011037 | Media aware distributed data layout - A storage system comprises a plurality of vdisks, with each vdisk containing a plurality of storage segments, and each segment providing a specific class of service (CoS). Each vdisk stores files with data and meta data distributed among its storage segments. A storage system comprises a memory having multiple classes of service. The system comprises an interface for storing a file as blocks of data associated with a class of service in the memory. The interface chooses the class of service for a block on a block by block basis. A file system for storing a file comprises a plurality of vdisks, with each vdisk having a plurality of inodes. Each inode of each vdisk stores data on one or more segments, with each segment having a different class of service. The system comprises a controller which stores data of a file in an inode of a vdisk, in one or more segments of that vdisk. A file system for storing a file comprises a plurality of vdisks, and each vdisk having a plurality of inodes. The system comprises a controller including a plurality of processors, with each processor serving one or more of the vdisks. A file system for storing comprises a plurality of vdisks, with each vdisk having a plurality of inodes, a plurality of inodes of at least one vdisk storing data on a plurality of segments, each segment having a different class of service. The system comprises a controller which stores data of the file in one or more segments of one vdisk. A method for storing a file. | 01-14-2010 |
20100094806 | File storage system, cache appliance, and method - A file storage system for storing data of a file received from a client includes a back-end file server in which the data is stored. The system includes a cache appliance in communication with the file server, such that the appliance stores portions of the data or attributes of the file, and uses the stored data or attributes to process file system requests received from the client, and which reads and writes data and attributes to the back-end file server independently. A system for responding to a file system protocol request in regard to a back-end server includes a token server. The system includes a plurality of cache appliances in communication with the token server, each of which receives tokens from the token server to synchronize access to data and attributes caches of the cache appliances, and reading and writing data and attributes to the back-end servers when tokens are revoked, the cache appliance having persistent storage in which data are stored, and the token server having persistent storage in which tokens are stored. A storage system includes a plurality of backend servers. The system includes a token server which grants permission to read and write file attributes and data system, and includes a plurality of cache appliances in communication with at least one of the backend servers and the token server for processing an incoming NFS request to the one backend server. Each cache appliance comprises an NFS server which converts incoming NFS requests into cache manager operations; a token client module in communication with the token server having a cache of tokens obtained from the token server; a cache manager that caches data and attributes and uses tokens from the token client module to ensure that the cached data or attributes are the most recent data or attributes, and an NFS client which sends outgoing NFS requests to the back-end file server. Methods for storing data of a file received from a client. | 04-15-2010 |
20100138605 | SYSTEM AND METHOD FOR MULTI-TIERED META-DATA CACHING AND DISTRIBUTION IN A CLUSTERED COMPUTER ENVIRONMENT - A system and method caches and distributes meta-data for one or more data containers stored on a plurality of volumes configured as a striped volume set (SVS) and served by a plurality of nodes interconnected as a cluster. The SVS comprises one meta-data volume (MDV) configured to store a canonical copy of certain meta-data, including access control lists and directories, associated with all data containers stored on the SVS, and one or more data volumes (DV) configured to store, at least, data content of those containers. In addition, for each data container stored on the SVS, one volume is designated a container attribute volume (CAV) and, as such, is configured to store (“cache”) a canonical copy of certain, rapidly-changing attribute meta-data, including time stamps and container length, associated with that container. | 06-03-2010 |
20100180153 | SYSTEM AND METHOD FOR REDUNDANCY-PROTECTED AGGREGATES - The present invention provides a system and a method for utilizing a parity protection module to back up data on striped aggregates. Specifically, the system computes party data for data stored at a particular location of each of a plurality of constituent aggregates, and stores the parity on one of the constituent aggregates that is a parity owner for that particular location of data. In the event one of the constituent aggregates fails, new data may still be accessed by the system (the striped aggregates), both to write new data, and to read data stored on the failed aggregate. In particular, the parity protection module allows clients to read data from a failed aggregate by running a reverse parity computation, which may also be used to restore the data to the failed aggregate. | 07-15-2010 |
20110202581 | Method and system for responding to file system requests - A system for responding to file system requests having file IDs comprising V, a volume identifier specifying the file system being accessed, and R, an integer, specifying the file within the file system being accessed. The system includes D disk elements in which files are stored, where D is greater than or equal to 1 and is an integer. The system includes a switching fabric connected to the D disk elements to route requests to a corresponding disk element. The system includes N network elements connected to the switching fabric. Each network element has a mapping function that for every value of V, specifies one or more elements from the set D that store the data specified by volume V, where N is greater than or equal to 1 and is an integer and N+D is greater than or equal to 3, which receives the requests and causes the switching fabric to route the requests by their file ID according to the mapping function. A method for responding to file system requests. The method includes the steps of receiving file system requests having file IDs comprising V, a volume identifier specifying the file system being accessed, and R, an integer, specifying the file within the file system being accessed at network elements. Each network element has a mapping function that for every value of V, specifies one or more elements from the set D that store the data specified by volume V. Then there is the step of routing the requests to a switching fabric connected to the network elements based on the file system request's ID according to the mapping function to disk elements connected to the switching fabric. | 08-18-2011 |
20110246491 | Method and apparatus for tiered storage - A system for storing file data and directory data received over a network includes a network interface in communication with the network which receives NAS requests containing data to be written to files from the network. The system includes a first type of storage. The system includes a second type of storage different from the first type of storage. The system includes a policy specification n which specifies a first portion of one or more files' data which is less than all of the files' data is stored in the first type of storage and a second portion of the data which is less than all of the data of the files is stored in the second type of store. The system comprises a processing unit which executes the policy and causes the first portion to be stored in the first type of storage and a second portion to be stored in the second type of storage. A method for storing file data and directory data received over a network. | 10-06-2011 |
20110282922 | Media aware distributed data layout - A storage system comprises a plurality of vdisks, with each vdisk containing a plurality of storage segments, and each segment providing a specific class of service (CoS). Each vdisk stores files with data and meta data distributed among its storage segments. A storage system comprises a memory having multiple classes of service. The system comprises an interface for storing a file as blocks of data associated with a class of service in the memory. The interface chooses the class of service for a block on a block by block basis. A file system for storing a file comprises a plurality of vdisks, with each vdisk having a plurality of inodes. Each inode of each vdisk stores data on one or more segments, with each segment having a different class of service. The system comprises a controller which stores data of a file in an inode of a vdisk, in one or more segments of that vdisk. A file system for storing a file comprises a plurality of vdisks, and each vdisk having a plurality of inodes. The system comprises a controller including a plurality of processors, with each processor serving one or more of the vdisks. A file system for storing comprises a plurality of vdisks, with each vdisk having a plurality of inodes, a plurality of inodes of at least one vdisk storing data on a plurality of segments, each segment having a different class of service. The system comprises a controller which stores data of the file in one or more segments of one vdisk. A method for storing a file. | 11-17-2011 |
20120084502 | METHOD AND SYSTEM FOR RESPONDING TO FILE SYSTEM REQUESTS - A system for responding to file system requests having file IDs comprising V, a volume identifier specifying the file system being accessed, and R, an integer, specifying the file within the file system being accessed includes D disk elements in which files are stored, where D is greater than or equal to 2 and is an integer. The system includes a switching fabric having a first switching element and a second switching element, each of which are connected to each of the D disk elements. The system includes N network elements, each of which is connected to each of the switching elements of the switching fabric, where N is greater than or equal to 2 and is an integer and N+D is greater than or equal to 4. | 04-05-2012 |
20120271858 | Media Aware Distributed Data Layout - A storage system includes a plurality of vdisks, with each vdisk containing a plurality of storage segments, and each segment providing a specific class of service (CoS) for storage. Each vdisk stores files with data and meta data distributed among its storage segments. A storage system includes a memory having multiple classes of service. The system includes an interface for storing a file as blocks of data associated with a class of service in the memory. The interface chooses the class of service for a block on a block by block basis for storage. A file system for storing a file. A file system for storing includes a plurality of vdisks. A method for storing a file. | 10-25-2012 |
20120303737 | System and Method for Storing Data in Clusters Located Remotely From Each Other - A system for storing data includes a plurality of clusters located remotely from each other in which the data is stored. Each cluster has a token server that controls access to the data with only one token server responsible for any piece of data. Each cluster has a plurality of Cache appliances. Each cluster has at least one backend file server in which the data is stored. The system includes a communication network through which the servers and appliances communicate with each other. A Cache Appliance cluster in which data is stored in back-end servers within each of a plurality of clusters located remotely from each other. A method for storing data. | 11-29-2012 |
20140115015 | Media Aware Distributed Data Layout - A storage system comprises a plurality of vdisks, with each vdisk containing a plurality of storage segments, and each segment providing a specific class of service (CoS). Each vdisk stores files with data and meta data distributed among its storage segments. A storage system includes a memory having multiple classes of service. The system includes an interface for storing a file as blocks of data associated with a class of service in the memory. The interface chooses the class of service for a block on a block by block basis. | 04-24-2014 |
20140156928 | Media Aware Distributed Data Layout - A storage system includes a plurality of vdisks, with each vdisk containing a plurality of storage segments, and each segment providing a specific class of service (CoS) for storage. Each vdisk stores files with data and meta data distributed among its storage segments. A storage system includes a memory having multiple classes of service. The system includes an interface for storing a file as blocks of data associated with a class of service in the memory. The interface chooses the class of service for a block on a block by block basis for storage. A file system for storing a file. A file system for storing includes a plurality of vdisks. A method for storing a file. | 06-05-2014 |