摘要:
A method, system, and computer program product to enable a user to specify an intended use for a logical volume. The logical volume is configured using an application-specific template (also referred to as a user template) for an application, where the application-specific template satisfies the intended use. Rules from the application-specific template are stored with the logical volume in addition to or as part of the intent.
摘要:
A method, system, language, and computer program product to enable a user to provide a high-level specification of storage requirements without having detailed knowledge of the underlying vendor-specific APIs and command line utilities for each possible storage device used to meet the storage requirements. The user does not specify how to implement the storage requirements. The system implements the high-level specification in hardware and/or software without further direction from the user.
摘要:
A method, system, and computer program product for adaptively implementing capabilities of a logical volume. If a particular capability is an inherent attribute of an existing storage device, the existing storage device is chosen to implement the volume. If the particular capability is not an inherent attribute of an existing storage device, one or more storage devices are selected and configured to provide the capability. If a capacity is requested for the logical volume and a storage device provides only a portion of the capacity, multiple storage devices having the capability are combined to provide the requested capability and capacity.
摘要:
A method, system, and computer program product for preserving the intent of a logical volume creator with the logical volume. The creator of a logical volume defines certain characteristics of that logical volume. In response to the user's requirements, the system explores the possibilities for providing the characteristics in the existing storage environment. The system then implements the logical volume and stores the intent, along with a corresponding set of rules for configuring the logical volume, with the logical volume. As a result, volume management operations like resizing the volume and evacuating data from the volume use the rules to preserve the intent of the creator. By ensuring that the logical volume consistently conforms to rules fulfilling the original intent, a consistent level of availability of the logical volume can be achieved to fulfill contractual availability requirements for storage service level agreements.
摘要:
A method, system, and language to express storage requirements. The language provides keywords and rules corresponding to commands for configuring a set of storage devices to provide requested capabilities of a logical volume. The language also has keywords and constructs for defining capabilities. The language supports direct inheritance of a capability, where a template specifies another template that contains rules to be used to provide a given capability. The language also supports indirect inheritance of a capability, where a template requires a capability but does not provide an implementation of the capability. In addition, the language is processed to “merge” rules by selecting a single storage device that conforms to more than one rule when possible. Merging rules enables a minimum number of storage devices to be used to meet a given logical volume configuration and set of capabilities.
摘要:
A method, system, computer system, and computer program product to allocate storage resources among multiple logical volumes. In response to a request to perform a set of operations on multiple logical volumes, a set of allocations of available storage space for performing the set of operations is made. At the time of identifying the storage regions to use for each allocation, the remaining operations and the storage regions that would be available for performing the remaining operations are examined. The rules for implementing each of the logical volumes can be evaluated as part of this examination. If it is apparent that one of the remaining operations will fail based upon a particular set of allocations, space allocated for a previous operation can be de-allocated and alternative allocations can be examined to find a set of allocations that enable the request to be performed successfully.
摘要:
A method involves: detecting a storage resource indication within a workflow request and, in response to the storage resource indication, generating an availability indication. The storage resource indication indicates a storage resource (e.g., by directly or indirectly identifying or selecting the storage resource). The availability indication indicates that the indicated storage resource is not available for subsequent workflow requests. The availability indication is generated prior to allowing the consumer that generated the workflow request to use the storage resource. The workflow request can include a request to allocate a logical storage structure (e.g., a volume or logical disk). The logical storage structure is allocated in response to the workflow request. If the workflow request is denied or expires, the logical storage structure is deleted.
摘要:
A method, system, computer system, and computer-readable medium for maintaining up-to-date, consistent copies of primary data without the need to replicate modified data when the data were modified as a result of an operation that is not an application-driven write operation captured during replication. Selected storage management operations are performed on the primary and secondary data stores at points in time when the data are the same to ensure that the data stored within the data stores remain consistent. These selected storage management operations include operations that produce modified data stored in the primary data store, where a portion of the modified data are not replicated to a secondary node. Other types of storage management operations are selected to be performed on both the primary and secondary data stores, where the operations do not directly change data in the primary data store, but may affect data stored in the primary data store.
摘要:
Various embodiments of systems and methods are disclosed for initially synchronizing redundant data (e.g., a mirror, a replica, or a set of parity information) with an original volume. State information identifies which regions of the original volume are currently valid, and only valid regions of the original volume are used to generate the values of the redundant data during the initial synchronization. For example, if the redundant data is a set of parity information, synchronizing the redundant data involves calculating one or more parity values based on the valid regions of the volume. If the redundant data is a duplicate copy (e.g., a mirror or replica) of the volume, synchronizing the redundant data involves copying the valid regions of the volume to the duplicate copy of the volume. If the original volume includes any invalid regions, unnecessary copying and/or processing for those regions can be avoided during the initial synchronization.
摘要:
A virtual copy of data stored in a first memory is created in a second memory. Creating the virtual copy includes, in one embodiment, creating first and second tables in memory each one of which comprises a plurality of multibit entries. Each entry of the first table corresponds to a respective memory region of the first memory. Each entry of the second table corresponds to a respective memory region of the second memory. The first bit of the first and second tables indicates whether the corresponding memory region of the first and second memories, respectively, contains valid data. The second bit of the first and second tables indicates whether data in the corresponding memory region of the first and second memories, respectively, has been modified since the creation of the first and second tables, respectively.