摘要:
A data replication management (DRM) architecture comprising a plurality of storage cells interconnected by a fabric. Flexibility in connectivity is provided by configuring each storage cell port to the fabric to handle both host data access requests and DRM traffic. Each storage cell comprises one or more storage controllers that can be connected to the fabric in any combination. Processes executing in the storage controller find a path to a desired destination storage cell. The discovery algorithm implements a link service that exchanges information related to DRM between the storage controllers. The DRM architecture is symmetric and peer cooperative such that each controller and storage cell can function as a source and a destination of replicated data. The DRM architecture supports parallel and serial “fan-out” to multiple destinations, whereby the multiple storage cells may implement data replicas.
摘要:
A data storage system adapted to maintain redundant data storage sets at a destination location(s) is disclosed. The data storage system establishes a copy set comprising a source volume and a destination volume. Data written to a source volume is automatically copied to the destination volume. The data storage system maintains a data log that may be activated when the destination volume is inaccessible due to, for example, a malfunction in the destination storage system or in the communication link between the source system and the destination system. I/O commands and the data associated with those commands are written to the data log, and after a destination system becomes available the information in the data log is merged into the destination volume to conform the data in the destination volume to the data in the source volume. The data log competes for disk capacity with other volumes on the system, and log memory is allocated as needed. If multiple remote sites are provided, then the system permits to implements a merge fence to manage the process of merging data into multiple destinations.
摘要:
Methods for allocating memory for logging data written by a host computer to a source virtual disk and for managing memory allocated to a data log, in a data storage system adapted to maintain redundant data storage sets at a destination location(s) are disclosed. The data storage system maintains a data log that may be activated when a destination volume is inaccessible. During the logging process the system implements an adaptive memory allocation algorithm that adjusts the log memory allocation increment as a function of the velocity of logging data written by the host computer(s). Similarly, during a merge process the system implements an adaptive memory deallocation algorithm that deallocates log memory in response to the velocity of logging data written by the host computer(s) and the velocity of merge data transmitted to the remote system. An amount of memory allocated to logging data may be compared with an amount of memory allocated to corresponding user data and, if greater, the data log terminated.
摘要:
A method for communicating between devices in a network includes creating an I/O tunnel between a first device and a second device through the network. The I/O tunnel is associated with I/O resources in both the first device and the second device, and wherein at least one of the I/O resources comprises a buffer resource. A data transfer operation may be sent between the first device and the second device by consuming at least some of the I/O resources associated with the I/O tunnel. A plurality of commands or a plurality of responses can be aggregated into a single buffer resource. Upon completion of the data transfer operation, the I/O resources that are consumed are automatically renewed.
摘要:
A data storage system adapted to maintain redundant data storage sets at a destination location(s) is disclosed. The data storage system establishes a copy set comprising a source volume and a destination volume. Data written to a source volume is automatically copied to the destination volume. The data storage system maintains a data log that may be activated when the destination volume is inaccessible due to, for example, a malfunction in the destination storage system or in the communication link between the source system and the destination system. I/O commands and the data associated with those commands are written to the data log, and after a destination system becomes available the information in the data log is merged into the destination volume to conform the data in the destination volume to the data in the source volume. The data log competes for disk capacity with other volumes on the system, and log memory is allocated as needed. In operation, the array controllers monitor connection status between array controllers in a DRM group. When a connection failure is detected the controllers determine which of the remaining controllers determine whether the source controller remains online, and if not then which destination controller should assume the role of the source controller.
摘要:
Methods and systems for managing disk capacity allocated to a data log in a source data storage system during a merge process are disclosed. Data in the data log may be merged into corresponding data on a destination storage system connected to the source data storage system by at least one communication link. In one embodiment a method comprises maintaining a ratio of merge writes out of the data log to writes from a host computer into the data log within a desired range until the write process reaches a predetermined distance from the end of the data log, and quiescing writes from a host computer into the data log until the data log is fully written to the destination storage system.
摘要:
A system for communicating between two devices in a network in which a semi-persistent tunnel is established between the two devices in advance of data communication. The semi-persistent tunnel includes resources that are pre-allocated in a first device at a first end of the communication link by a second device at the second end of the communication link. The first and second devices implement a plurality of processes for handling data transfer operations. Preferably, the semi-persistent tunnel also includes resources that are pre-allocated in a device at the second end of the communication link by the device at the first end of the communication link to allow bi-directional communication. Data transfer operations transmitted through the tunnel include an identification of specific resources of the pre-allocated resources that are to handle the data transfer operation. Data transfer operations also include a vector identifying a particular process among the plurality of processes that implement the data transfer operation.
摘要:
A system in which data operations for a data replication group are received in-order, and buffered. When the operations are complete, they are stored in a non-volatile memory atomically with a group sequence number. The cache is preferably mirrored. This creates a persistent association between the data operation and the sequence number. After the atomic store is performed in at least one non-volatile cache, the data operation is propagated to another member of the data replication group along with the group sequence number. In the other member, the data operation is cached at least once in a non-volatile cache atomically with the group sequence number. In this manner, the set of group sequence numbers for a plurality of operations forms a continuous ordering of the data operations.
摘要:
Methods and systems for managing disk capacity allocated to a data log in a source data storage system during a merge process are disclosed. Data in the data log may be merged into corresponding data on a destination storage system connected to the source data storage system by at least one communication link. In one embodiment a method comprises maintaining a ratio of merge writes out of the data log to writes from a host computer into the data log within a desired range until the write process reaches a predetermined distance from the end of the data log, and quiescing writes from a host computer into the data log until the data log is fully written to the destination storage system.
摘要:
A data storage system adapted to maintain redundant data storage sets at a destination location(s) is disclosed. The data storage system establishes a copy set comprising a source volume and a destination volume. Data written to a source volume is automatically copied to the destination volume. The data storage system maintains a data log that may be activated when the destination volume is inaccessible due to, for example, a malfunction in the destination storage system or in the communication link between the source system and the destination system. I/O commands and the data associated with those commands are written to the data log, and after a destination system becomes available the information in the data log is merged into the destination volume to conform the data in the destination volume to the data in the source volume. The data log competes for disk capacity with other volumes on the system, and log memory is allocated as needed. Command entries and data entries are stored in distinct areas of the data log, and the command entries include information identifying the memory offset of the associated data entries.
摘要翻译:公开了一种适于在目的地位置维护冗余数据存储组的数据存储系统。 数据存储系统建立包括源卷和目的地卷的复制集。 写入源卷的数据将自动复制到目标卷。 数据存储系统维护数据记录,当由于例如目的地存储系统中的故障或源系统与目的地系统之间的通信链路而导致目的地卷不可访问时,可能会被激活。 I / O命令和与这些命令相关联的数据被写入数据日志,并且在目标系统变得可用之后,将数据日志中的信息合并到目标卷中,以使目的卷中的数据符合目标卷中的数据 源音量。 数据日志与系统上的其他卷竞争磁盘容量,并根据需要分配日志内存。 命令条目和数据条目存储在数据日志的不同区域中,命令条目包括标识关联数据条目的存储器偏移量的信息。