Methods and apparatus for application prediction through machine learning based analysis of IO patterns

    公开(公告)号:US11615340B2

    公开(公告)日:2023-03-28

    申请号:US16420493

    申请日:2019-05-23

    Abstract: An apparatus comprises a host device configured to communicate over a network with a storage system. The host device comprises a multi-path input-output driver configured to control delivery of input-output operations from the host device to the storage system over selected ones of a plurality of paths through the network. The multi-path input-output driver is further configured to collect information characterizing input-output patterns for each of a plurality of different applications executing on the host device, and to provide the collected information to a machine learning system. The machine learning system utilizes the collected information to generate one or more application predictions based at least in part on analysis of observed input-output patterns. The collected information in some embodiments comprises statistical distributions of numbers of input-output operations having payload sizes falling into specified ranges over a given time period.

    REDUCING WRITE DELAYS WHILE TAKING SNAPSHOTS

    公开(公告)号:US20230022243A1

    公开(公告)日:2023-01-26

    申请号:US17383752

    申请日:2021-07-23

    Abstract: Snapshots are processed without holding all write operations while the snapshots are being activated. Rather than holding all write operations until snapshots are activated, write operations may be allowed to proceed. Snapshot write processing may be temporarily suspended while the snapshots are being activated, including snapshot metadata being updated, while write operations received while the snapshots are being activated are logged. After snapshots have been activated for all logical LSUs for which snapshots were instructed to be activated, the logging of write operations may be stopped, and the logged write entries processed to determine whether any of the logged write operations require updating snapshot information of any logical storage elements (LSEs) of the LSUs. While the logged write operations are being processed, any write operations received from a host for an LSE having a logged write operation may be held until the held operation, or all held operations are processed.

    Remote sharing of directly connected storage

    公开(公告)号:US11561915B2

    公开(公告)日:2023-01-24

    申请号:US17038188

    申请日:2020-09-30

    Abstract: A host system may include a computational processing unit implemented using hardware and a hardware virtualizing and remote sharing (HVRS) server that virtualizes and shares the computational processing unit with other host systems, where the host system is directly connected to an internal fabric of a storage system. A storage system interface (SSI) of the host system may be directly connected to the internal fabric of the storage system and also directly connected to a same peripheral device interconnect as the CPU, the computational processing unit and/or other hardware resources of the host system. The SSI may communicate with storage resources of the storage system using remote direct memory access (RDMA) and zero-copy technologies. Such a host system may provide the storage capacity and data protection services of a storage system at relatively fast speeds e.g., comparable to non-volatile RAM on a host system configured for use as persistent memory.

    Array driven fabric performance notifications for multi-pathing devices

    公开(公告)号:US11543971B2

    公开(公告)日:2023-01-03

    申请号:US17106970

    申请日:2020-11-30

    Abstract: A host device is configured to communicate over a network with a storage system. The host device comprises a multi-path input-output (MPIO) driver configured to control delivery of input-output (IO) operations from the host device to the storage system over selected ones of a plurality of paths through the network. The MPIO driver is further configured to send one or more requests to the storage system for data corresponding to performance of one or more switch fabrics in the network, and to receive the data corresponding to the performance of the one or more switch fabrics from the storage system. The MPIO driver is also configured to identify one or more performance issues associated with at least one of the selected ones of the plurality of paths based on the received data, and to manage one or more of the input-output operations responsive to the identified performance issues.

    Application discovery using access pattern history

    公开(公告)号:US11513912B2

    公开(公告)日:2022-11-29

    申请号:US16825268

    申请日:2020-03-20

    Abstract: Application discovery from access patterns is disclosed. Access histories from multiple servers are collected and stored at a warehouse, which may be part of a data protection system. A time series analysis is performed on the access history to identify consistency groups and applications from the perspective of devices and storage arrays. Data protection operations such as backup operations can then be performed on the basis of devices or storage in storage arrays or other arrangements that pertain to specific consistency groups or to specific applications.

    System and method of dynamic system resource allocation for primary storage systems with virtualized embedded data protection

    公开(公告)号:US11513902B1

    公开(公告)日:2022-11-29

    申请号:US15280723

    申请日:2016-09-29

    Abstract: Embodiments provide for a primary storage array having multiple storage tiers. The multiple storage tiers include one or more performance tiers and at least one deduplicated storage tier storing deduplicated data. One embodiment provides for a data storage system including the storage array and an I/O engine to manage I/O requests for the storage array. The data storage system additionally includes a virtual execution environment to execute a virtual backup engine, the virtual backup engine to generate backup data for the one or more storage tiers of primary storage and deduplicate the backup data and a resource manager to manage a resource allocation to the virtual backup engine based on a hint received from the virtual backup engine, the hint associated with a backup operation that has a characterization selected from a set including computationally intensive and I/O intensive.

    Storage based file FTP
    97.
    发明授权

    公开(公告)号:US11481286B2

    公开(公告)日:2022-10-25

    申请号:US16794529

    申请日:2020-02-19

    Abstract: Transferring files directly from a storage system to a backup storage system includes determining identifiers for blocks on the storage system that correspond to files that are to be backed up, providing the identifiers for the blocks to the storage system, and the storage system pushing the blocks indicated by the identifiers directly from the storage system to the backup storage system. The identifiers may be logical block addresses. Determining the logical block addresses may vary according to a file system for files that are to be backed up. Determining the logical block address may include determining an inode value for each of the files that are to be backed up or may include determining a logical cluster number for each of the files that are to be backed up. The backup storage system may include a media server and a storage device.

    Buffer allocation techniques
    98.
    发明授权

    公开(公告)号:US11481147B1

    公开(公告)日:2022-10-25

    申请号:US17350502

    申请日:2021-06-17

    Abstract: Techniques for transmitting data may include: statically allocating a first buffer by a first entity; determining, by the second code entity, whether first data to be returned to the first entity fits into a data area of the first buffer; storing the first data in the data area of the first buffer responsive to determining the first data fits into the data area of the first buffer; and responsive to determining the first data does not fit into the data area of the first buffer, performing first processing by the second entity to store the first data in a dynamically allocated second buffer having a descriptor stored in the first buffer. The descriptor may include the address and size of the second buffer. The first and second entity may be code entities in the same system, or may be different systems that communicate using a remote direct memory access protocol.

    Adapting service level policies for external latencies

    公开(公告)号:US11422704B2

    公开(公告)日:2022-08-23

    申请号:US17081217

    申请日:2020-10-27

    Abstract: Techniques for processing I/O operations in a data storage system may include: receiving I/O operations directed to a logical device associated with a service level specifying a target I/O response time goal; receiving a input identifying whether to calculate an observed I/O response time for the logical device using only an internal processing time associated with processing performed within the data storage system when servicing I/O operations directed to the logical device; determining, in accordance with the input and the I/O operations directed to the logical device, the observed I/O response time for the logical device; determining a service level violation for the first logical device whereby the observed I/O response time violates the service level; and responsive to determining the service level violation whereby the observed I/O response time violates the service level, performing processing to alleviate or remove the first service level violation.

    ALERTING AND MANAGING DATA STORAGE SYSTEM PORT OVERLOAD DUE TO HOST PATH FAILURES

    公开(公告)号:US20220237091A1

    公开(公告)日:2022-07-28

    申请号:US17159329

    申请日:2021-01-27

    Abstract: Techniques for detecting and managing target port overloads due to host initiator or path failures may include: receiving I/Os from initiators of a host at target ports of a data storage system; determining initiator workloads for the initiators; determining target workloads for the target ports; determining that a first of the initiators of the host is a failed initiator that has stopped sending I/Os to the data storage system, wherein the first initiator has a first of the initiator workloads; determining, in accordance with the first initiator workload, revised target workloads for the target ports; determining, in accordance with revised target workloads, whether any of the target ports is expected to be overloaded; and responsive to determining that at least one of the target ports is expected to be overloaded, performing a corrective action to alleviate or reduce an overloaded workload condition expected for the at least one target port.

Patent Agency Ranking