Patent application number | Description | Published |
20080288645 | COMPUTER PROGRAM PRODUCT USING TWO DIFFERENT PROGRAMS TO DETERMINE STATE OF A NETWORK NODE TO ELIMINATE MESSAGE RESPONSE DELAYS IN SYSTEM PROCESSING - The determination of node and/or adapter liveness in a distributed network data processing system is carried out via one messaging protocol that can be assisted by a second messaging protocol which is significantly less susceptible to delay, especially memory blocking delays encountered by daemons running on other nodes. The switching of protocols is accompanied by controlled grace periods for needed responses. This messaging protocol flexibility is also adapted for use as a mechanism for controlling the deliberate activities of node addition (birth) and node deletion (death). | 11-20-2008 |
20080291837 | COMPUTER PROGRAM PRODUCT FOR DETERMINATION OF REMOTE ADAPTER AND/OR NODE LIVENESS - The determination of node and/or adapter liveness in a distributed network data processing system is carried out via one messaging protocol that can be assisted by a second messaging protocol which is significantly less susceptible to delay, especially memory blocking delays encountered by daemons running on other nodes. The switching of protocols is accompanied by controlled grace periods for needed responses. This messaging protocol flexibility is also adapted for use as a mechanism for controlling the deliberate activities of node addition (birth) and node deletion (death). | 11-27-2008 |
20090019047 | CONCURRENT DIRECTORY UPDATE IN A CLUSTER FILE SYSTEM - A method for avoiding directory conflicts across a file system having multiple nodes with one node representing a token manager. For each directory, at least one metanode responsible for directory updates. The method involving obtaining a name-based lock on a filename. Querying the token manager for a lock token. If a new token is obtained, sending a Remote Procedure Call (RPC) to the metanode to obtain matching directory entries, and caching the result of the RPC so that subsequent operations on that filename can be satisfied without additional messages sent to the metanode. Updating a cached directory block in memory by creating a new directory entry in the block or deleting an existing directory entry from the block. Information regarding the updating is sent to the metanode on one of: periodic schedule, a subsequent synchronization event, or when the name-based lock token is revoked. | 01-15-2009 |
20090019098 | FILE SYSTEM MOUNTING IN A CLUSTERED FILE SYSTEM - A method effectively preventing a requesting node from unfencing and mounting a file system subsequent to a failure in a cluster file system having a plurality of active nodes. The method comprising first upgrading one active node in the cluster to function as a cluster manager node. The cluster manager is in communication with all nodes. The cluster manager is assigned manager responsibilities, in part, comprising first receiving an active status request from the node requesting to mount a file system. The cluster manager first queries the quorum nodes to determine whether each node considers the cluster manager to still have cluster management responsibilities for the file system. If a majority of quorum nodes consider the cluster manager to still have cluster management responsibilities for the file system then the cluster manager responds to the requesting node's active status request. Thereafter, the requesting node proceeds with mounting the file system. | 01-15-2009 |
20090043978 | EFFICIENT HIERARCHICAL STORAGE MANAGEMENT OF A FILE SYSTEM WITH SNAPSHOTS - A method is provided for managing the storage of a file that has been selected for migration from a first storage level within a file system to a second storage level. The method comprises copying each of one or more data blocks of the selected file that are stored in the first storage level at a physical disk address maintained in a corresponding reference of an inode for the selected file from the first storage level to the second storage level; maintaining a logical ditto address in each reference of an inode for each snapshot file in the file system that refers to one of the one or more data blocks of the selected file that were copied to the second storage level; and updating the file system to include a managed region for controlling access to the one or more data blocks through the inode for the selected file. | 02-12-2009 |
20110055275 | UNIFIED USER IDENTIFICATION WITH AUTOMATIC MAPPING AND DATABASE ABSENCE HANDLING - An identification system that may be used in heterogeneous computing environments provides a fail-free path to providing identifiers from a single canonical namespace. Objects or gateways requiring an identifier for access are accessed using an identifier for the canonical namespace. If an entity requests access using an identifier from another namespace, an external database is consulted to determine if a mapping exists for the identifier to another identifier the canonical namespace. If no mapping exists, or the external database is unavailable, then an identifier is automatically generated in the canonical namespace and is used for the access. An internal database is updated with the automatically generated identifier, providing a mechanism to add mappings without administrative intervention. To access resources requiring an identifier from another particular namespace, a canonical namespace identifier may be mapped to another identifier in the particular namespace, or a generic identifier may be used. | 03-03-2011 |
20110145307 | DIRECTORY TRAVERSAL IN A SCALABLE MULTI-NODE FILE SYSTEM CACHE FOR A REMOTE CLUSTER FILE SYSTEM - Directory traversal in a scalable multi-node file system cache for a remote cluster file system, is provided. One implementation involves maintaining a scalable multi-node file system cache in a local cluster file system, and caching local file data in the cache by fetching file data on demand from a remote cluster file system into the cache over the network. The local file data corresponds to file data in the remote cluster file system. The local namespace emulates the remote namespace and is created on demand. Access to data further involves performing directory traversal for the cache for the remote cluster file system by creating a directory structure on demand. | 06-16-2011 |
20110145363 | DISCONNECTED FILE OPERATIONS IN A SCALABLE MULTI-NODE FILE SYSTEM CACHE FOR A REMOTE CLUSTER FILE SYSTEM - Facilitating access to data in a network, is provided. One implementation involves maintaining a scalable multi-node file system cache in a local cluster file system, and caching file data in a cache by fetching file data on demand from a remote cluster file system into the local cached file system over the network. The local file data corresponds to file data in the remote cluster file system. Upon disconnection from the remote cluster file system, all file operations are supported at the cache. Then, upon reconnection to the remote cluster file system over the network, the remote cluster file system is synchronized with the information cached in the cache during the disconnection even in the presence of failures. | 06-16-2011 |
20110145367 | SCALABLE CACHING OF REMOTE FILE DATA IN A CLUSTER FILE SYSTEM - Scalable caching of remote file data in cluster file systems is provided. One implementation involves maintaining a cache in a local cluster file system and caching local file data in the cache by fetching file data on demand from the remote cluster file system into the local cached file system over the network. The local file data and metadata corresponds to the remote file data and metadata in the remote cluster file system. Updates made to the local file data and metadata are pushed back to the remote cluster file system asynchronously. | 06-16-2011 |
20110145499 | ASYNCHRONOUS FILE OPERATIONS IN A SCALABLE MULTI-NODE FILE SYSTEM CACHE FOR A REMOTE CLUSTER FILE SYSTEM - Asynchronous file operations in a scalable multi-node file system cache for a remote cluster file system, is provided. One implementation involves maintaining a scalable multi-node file system cache in a local cluster file system, and caching local file data in the cache by fetching file data on demand from the remote cluster file system into the cache over the network. The local file data corresponds to file data in the remote cluster file system. Local file information is asynchronously committed from the cache to the remote cluster file system over the network. | 06-16-2011 |
20110153561 | MULTI-PHASE FILE SYSTEM RESTORE WITH SELECTIVE ON-DEMAND DATA AVAILABILITY - A selective restore technique for restoring file systems within computer systems provides on-demand access during the restore process, while preventing users from slowing the restore process by generating random accesses to files that have not yet been restored, early in the restore process. The restored files are grouped into multiple groups of files, which correspond to multiple phases of the restore process. On-demand requests may be locked out for some or all users during the first one or more phases of the restore, while they are permitted for the subsequent phases, ensuring that critical files needed by all users will be available before the backup process is interrupted by on-demand accesses. The groups are generally organized by elapsed time since last access or modification, and may be organized at restore time or during periodic back-up operations so that the files may be similarly organized in the backup media. | 06-23-2011 |
20110153567 | RESTORE OF FULL SYSTEM BACKUP AND INCREMENTAL BACKUPS USING MULTIPLE SIMULTANEOUS DEVICE STREAMS - A technique for restoring file systems by applying full and incremental backups together while streaming them from multiple devices provides a faster system restore from a full backup where incremental backups must also be applied. A first storage device streams the full backup while at least one second storage device streams at least one incremental backup. As files are detected in the incremental backup, they are written instead of the corresponding file in the full backup. Incremental backups can be pre-merged to reduce their number to one less than a number of storage devices available to stream the backups, so that the full backup can be streamed along with the pre-merged incremental backup(s) to restore the file system. | 06-23-2011 |
20110258306 | Lock acquisition among node of divided cluster - The acquisition of a lock among nodes of a divided cluster is disclosed. A method is performable by each of at least one node of the cluster. A node waits for a delay corresponding to its identifier. The node asserts intent to acquire the lock by writing its identifier to X and Y variables where another node has failed to acquire the lock. The node waits for another node to acquire the lock where the other node has written to X, and proceeds where Y remains equal to its own identifier. The node waits for another node to acquire the lock where the other node has written to a Z variable, and writes its own identifier to Z and proceeds where the other node has failed. The node writes a value to Y indicating that it is acquiring the lock, and maintains acquisition by periodically writing to Z. | 10-20-2011 |
20120030439 | Data Sharing for File Clones Using Reverse Ditto References - A method, system, and computer program product for creating and implementing file clones using reverse ditto references. A clone inode is created as a copy of an original inode. The clone inode and the original inode are indistinguishable to an end user. Each additional file clone created spawns a clone inode. An immutable clone-parent inode is created that contains the disk block addresses, while writable clones inode instead contain dittos linking the clone inode to data blocks referenced in the clone-parent inode. Data block address links in the original inode are moved to the new clone-parent inode and dittos replace the original data block address links in the original inode. When a clone file is updated, the new data is written to a new disk location and a corresponding ditto in the clone inode is replaced with a data block link address, keeping the data of the clone-parent inode intact. | 02-02-2012 |
20120166499 | CONCURRENT DIRECTORY UPDATE IN A CLUSTER FILE SYSTEM - A method for avoiding directory conflicts across a file system having multiple nodes with one node representing a token manager. For each directory, at least one metanode responsible for directory updates. The method involving obtaining a name-based lock on a filename. Querying the token manager for a lock token. If a new token is obtained, sending a Remote Procedure Call (RPC) to the metanode to obtain matching directory entries, and caching the result of the RPC so that subsequent operations on that filename can be satisfied without additional messages sent to the metanode. Updating a cached directory block in memory by creating a new directory entry in the block or deleting an existing directory entry from the block. Information regarding the updating is sent to the metanode on one of: periodic schedule, a subsequent synchronization event, or when the name-based lock token is revoked. | 06-28-2012 |
20120303686 | SCALABLE CACHING OF REMOTE FILE DATA IN A CLUSTER FILE SYSTEM - Scalable caching of remote file data in cluster file systems is provided. One implementation involves maintaining a cache in a local cluster file system and caching local file data in the cache by fetching file data on demand from the remote cluster file system into the local cached file system over the network. The local file data and metadata corresponds to the remote file data and metadata in the remote cluster file system. Updates made to the local file data and metadata are pushed back to the remote cluster file system asynchronously. | 11-29-2012 |
20120311065 | ASYNCHRONOUS FILE OPERATIONS IN A SCALABLE MULTI-NODE FILE SYSTEM CACHE FOR A REMOTE CLUSTER FILE SYSTEM - Asynchronous file operations in a scalable multi-node file system cache for a remote cluster file system, is provided. One implementation involves maintaining a scalable multi-node file system cache in a local cluster file system, and caching local file data in the cache by fetching file data on demand from the remote cluster file system into the cache over the network. The local file data corresponds to file data in the remote cluster file system. Local file information is asynchronously committed from the cache to the remote cluster file system over the network. | 12-06-2012 |
20130080392 | RESTORE OF FULL SYSTEM BACKUP AND INCREMENTAL BACKUPS USING MULTIPLE SIMULTANEOUS DEVICE STREAMS - A technique for restoring file systems by applying full and incremental backups together while streaming them from multiple devices provides a faster system restore from a full backup where incremental backups must also be applied. A first storage device streams the full backup while at least one second storage device streams at least one incremental backup. As files are detected in the incremental backup, they are written instead of the corresponding file in the full backup. Incremental backups can be pre-merged to reduce their number to one less than a number of storage devices available to stream the backups, so that the full backup can be streamed along with the pre-merged incremental backup(s) to restore the file system. | 03-28-2013 |
20130110875 | UNIFIED USER IDENTIFICATION WITH AUTOMATIC MAPPING AND DATABASE ABSENCE HANDLING | 05-02-2013 |
20130138615 | SYNCHRONIZING UPDATES ACROSS CLUSTER FILESYSTEMS - Embodiments of the invention relate to synchronization of data in a shared pool of configurable computer resources. An image of the filesystem changes, including data and metadata, is captured in the form of a consistency point. Sequential consistency points are created, with changes to data and metadata in the filesystem between sequential consistency captured and placed in a queue for communication to a target filesystem at a target site. The changes are communicated as a filesystem operation, with the communication limited to the changes captured and reflected in the consistency point. | 05-30-2013 |
20130138616 | SYNCHRONIZING UPDATES ACROSS CLUSTER FILESYSTEMS - Embodiments of the invention relate to synchronization of data in a shared pool of configurable computer resources. An image of the filesystem changes, including data and metadata, is captured in the form of a consistency point. Sequential consistency points are created, with changes to data and metadata in the filesystem between sequential consistency captured and placed in a queue for communication to a target filesystem at a target site. The changes are communicated as a filesystem operation, with the communication limited to the changes captured and reflected in the consistency point. | 05-30-2013 |
20130159349 | UNIFIED USER IDENTIFICATION WITH AUTOMATIC MAPPING AND DATABASE ABSENCE HANDLING - An identification system that may be used in heterogeneous computing environments provides a fail-free path to providing identifiers from a single canonical namespace. Objects or gateways requiring an identifier for access are accessed using an identifier for the canonical namespace. If an entity requests access using an identifier from another namespace, an external database is consulted to determine if a mapping exists for the identifier to another identifier the canonical namespace. If no mapping exists, or the external database is unavailable, then an identifier is automatically generated in the canonical namespace and is used for the access. An internal database is updated with the automatically generated identifier, providing a mechanism to add mappings without administrative intervention. To access resources requiring an identifier from another particular namespace, a canonical namespace identifier may be mapped to another identifier in the particular namespace, or a generic identifier may be used. | 06-20-2013 |
20140095459 | SUPPORTING COORDINATED ACCESS TO A FILE SYSTEM'S SHARED STORAGE USING AUTOMATIC ALIGNMENT OF A PARALLEL FILE ACCESS PROTOCOL AND METADATA MANAGEMENT - Embodiments of the invention relate to supporting coordinated access to a file system's shared disk storage subsystem using an automatic alignment of a parallel file access protocol and metadata management on a per object basis. A file server (among servers in the cluster) receives a client's request to access a file stored by the file system in the storage subsystem using a parallel file access protocol. If the file system has selected a file server to serve as a metadata manager of said file, the file server uses the selected file server to coordinate access to the file's metadata. If the file system has not selected a file server to serve as the metadata manager of the file, the file system selects the file server that received said request as the metadata manager for said file until a file close request operation is received. | 04-03-2014 |
20140095544 | COORDINATED ACCESS TO A CLUSTERED FILE SYSTEM'S SHARED STORAGE USING SHARED-LOCK ARCHITECTURE - Embodiments of the invention relate to coordinated access to a clustered file system's shared storage subsystem using a shared-lock architecture. A particular file server is configured to coordinate the file system's file access layout particular server, in response to a client's file access layout request for byte-ranges of a file stored in the storage subsystem being received by a file server in cluster and sent to said particular server, generates a file access layout of a set of file servers for a parallel file access protocol to use and byte ranges of the file that particular individual file servers to use, to service an I/O request for the file. The file server (that received the request), sends the generated file access layout to said client, and requests coordinated access to said file from the particular server in response to receiving an I/O request to byte-ranges of said file. | 04-03-2014 |
20140095582 | COORDINATED ACCESS TO A FILE SYSTEM'S SHARED STORAGE USING DYNAMIC CREATION OF FILE ACCESS LAYOUT - Embodiments of the invention relate to supporting coordinated access to a clustered file system's shared disk storage subsystem by using dynamic creation of file access layout for different workloads and access patterns. Active file servers in the cluster have equivalent access to shared data of said file system. In one embodiment, a particular file server in the cluster is configured to coordinate the file system's layout. The particular file server, in response to a particular client's request for a layout of a file stored by said file system in said subsystem determines a file access layout for a parallel file access protocol to use when servicing an I/O request by said client, marks said layout as active for the client, and sends the layout to the client. The file access layout is determined based on one or more of current file system resources, a specific workload type and a specific byte-range of the file included in the client request, and properties of the file. The layout includes a set of file servers in said cluster and byte ranges of the file, and the byte-range being associated with a particular server among the set. | 04-03-2014 |
20140122823 | GENERALIZED STORAGE ALLOCATION FOR MULTIPLE ARCHITECTURES - Embodiments of the invention relate to storage allocation in a storage system. One embodiment includes generating a request for storage space allocation in a particular storage device by a first node. An owner node associated with the particular storage device is determined by a first allocation client associated with the first node. The request is sent by the first allocation client to a second allocation client associated with the owner node. A storage device allocation region of the particular storage device is created, the allocation region comprising a height proportional to storage devices the owner node and the second allocation client are coupled with, and a width that is inversely proportional to a number of nodes sharing the particular storage device. | 05-01-2014 |
20140123226 | UNIFIED USER IDENTIFICATION WITH AUTOMATIC MAPPING AND DATABASE ABSENCE HANDLING - An identification system that may be used in heterogeneous computing environments provides a fail-free path to providing identifiers from a single canonical namespace. Objects or gateways requiring an identifier for access are accessed using an identifier for the canonical namespace. If an entity requests access using an identifier from another namespace, an external database is consulted to determine if a mapping exists for the identifier to another identifier the canonical namespace. If no mapping exists, or the external database is unavailable, then an identifier is automatically generated in the canonical namespace and is used for the access. An internal database is updated with the automatically generated identifier, providing a mechanism to add mappings without administrative intervention. To access resources requiring an identifier from another particular namespace, a canonical namespace identifier may be mapped to another identifier in the particular namespace, or a generic identifier may be used. | 05-01-2014 |
20140201491 | EFFICIENT ALLOCATION AND RECLAMATION OF THIN-PROVISIONED STORAGE - Embodiments of the inventions relate to granular management of data storage blocks in a data storage system. In one aspect, status values are employed to track “used”, “free”, and “claimed free” storage blocks. A storage block having stored data is identified as used, a storage block available to store data is identified as free, and a storage block having previously stored data removed that has not been reclaimed is identified as claimed free. These values are maintained on a map to track each data block within the data storage system. Available claimed free data blocks are prioritized for data block allocation over available free data blocks for efficient storage, including enabling efficient reclamation of data blocks and minimizing data movement needed for reclamation-oriented de-fragmentation. | 07-17-2014 |
20140201492 | EFFICIENT ALLOCATION AND RECLAMATION OF THIN-PROVISIONED STORAGE - Embodiments of the inventions relate to granular management of data storage blocks in a data storage system. In one aspect, status values are employed to track “used”, “free”, and “claimed free” storage blocks. A storage block having stored data is identified as used, a storage block available to store data is identified as free, and a storage block having previously stored data removed that has not been reclaimed is identified as claimed free. These values are maintained on a map to track each data block within the data storage system. Available claimed free data blocks are prioritized for data block allocation over available free data blocks for efficient storage, including enabling efficient reclamation of data blocks and minimizing data movement needed for reclamation-oriented de-fragmentation. | 07-17-2014 |
20140317359 | CLUSTERED FILE SYSTEM CACHING - A method for accessing data stored in a distributed caching storage system containing a home cluster and a secondary cluster is provided. A first copy of a file is stored on the home cluster and a second copy of the file is stored on the secondary cluster. The second copy of the file is associated with an inode data structure having a consistency attribute. An input/output request is received directed to the file and indicates that file is in an inconsistent state by updating the inode's consistency attribute. The first copy and the second copy of the file is updated according to the received input/output request and it is determined whether the first copy and the second copy were updated successfully. The maintaining of the inode's consistency attribute is indicative of the inconsistent state of the file. | 10-23-2014 |