Patents by Inventor Michael Ferrari

Michael Ferrari has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Publication number: 20220121374
    Abstract: A snapshot for use in a cascaded snapshot environment includes a device level source sequence number and a Direct Image Lookup (DIL) data structure. The device level source sequence number indicates the level of the snapshot in the cascade, and the snapshot DIL indicates the location of the data within the snapshot cascade. A target device for use in the cascaded snapshot environment includes a device level target sequence number, a track level sequence data structure, and a DIL. When the target device is linked to a snapshot, the device level target sequence number is incremented, which invalidates all tracks of the target device. The snapshot DIL is copied to the target device, but a define process is not run on the target device such that the tracks of the target device remain undefined. IO operations use the device level target sequence number to identify data on the target device.
    Type: Application
    Filed: October 16, 2020
    Publication date: April 21, 2022
    Inventors: Sandeep Chandrashekhara, Michael Ferrari, Jeffrey Wilson
  • Patent number: 11281540
    Abstract: A remote data facility includes a primary storage volume on a first storage system mirrored to a backup storage volume on a second storage system. A nocopy clone of a production volume is added to the primary storage volume. A define process is used to cause the tracks of the nocopy clone to point to backend allocations of tracks of memory of the production volume. As tracks of the nocopy clone are defined, corresponding flags are marked as invalid to cause data associated with the tracks to be replicated across the remote data facility to the backup storage volume. Incremental clones can be added to the primary storage volume, defined, and replicated on the remote data facility using the same process. Nocopy clones and target-less nocopy snapshots of the backup storage volume are used to restore the production volume using failover/failback mechanisms of the remote data facility.
    Type: Grant
    Filed: January 30, 2020
    Date of Patent: March 22, 2022
    Assignee: Dell Products, L.P.
    Inventors: Akshay Kumar Srivastava, Sandeep Chandrashekhara, Michael Ferrari, Deepak Vokaliga, Darren Fernandes
  • Patent number: 11237916
    Abstract: A no-copy clone of a logical storage unit is created. A define process is initiated for defining a target logical storage unit as the clone before activation of the target logical storage unit. By initiating the define process before activating the logical storage unit, there is a greater likelihood that, when a write operation is received for a data portion on the source logical storage unit or target logical storage unit after activation of the target LSU, the data portion will already be defined and not need to be defined when performing the write operation. When a write operation is received at the source logical storage unit, if the target logical storage unit is not active yet, the data of the write operation may be written to an allocated physical location for the data portion shared between the source and target logical storage units without updating any clone metadata.
    Type: Grant
    Filed: November 22, 2019
    Date of Patent: February 1, 2022
    Assignee: EMC IP Holding Company LLC
    Inventors: Sandeep Chandrashekhara, Michael Ferrari, Jeffrey Wilson, Mark J. Halstead, Art Longden
  • Publication number: 20210374096
    Abstract: Targetless snapshots that are in use are excluded from discard and exempted from inclusion against a snapshot retention count limit. Snapshots that are linked to a target volume are considered to be in use. Snapshots having a persist attribute set are considered to be in use. Snapshots having an expiration attribute set are considered to be in use until at least the expiration time. Snapshots having an age limit attribute set are considered to be in use until reaching at least the specified age. The snapshot retention count limit can be updated with a command. Other commands discard snapshots created before a specified time or older than a specified age, provided the snapshots are not in use. A terminate all command prompts discard of all snapshots that are not in use.
    Type: Application
    Filed: May 29, 2020
    Publication date: December 2, 2021
    Applicant: EMC IP HOLDING COMPANY LLC
    Inventors: Nicholas Von Hein, Michael Ferrari, Daryl Kinney, Shakil Anwar, Tao Tao
  • Publication number: 20210373780
    Abstract: Storage objects and targetless snaps of the storage objects are represented using a system replication data pointer table (SRT), direct index lookup (DIL) tables, and virtual replication data pointer tables (VRTs). The SRT is a system level track-based data structure that stores metadata indicative of the actual (physical layer) allocations for all targetless snapshots in a storage array. The size of the SRT in terms of total entries corresponds to the overall storage capacity of the managed drives of the storage array. Each utilized entry of the SRT includes backend metadata with a pointer to a managed drive and metadata that identifies the associated storage object and track via the VRTs and DIL tables. SRT metadata is created and discarded as backend allocations are utilized and freed so the SRT is a dynamic data structure that can efficiently adjust its size and corresponding memory requirements.
    Type: Application
    Filed: May 28, 2020
    Publication date: December 2, 2021
    Applicant: EMC IP HOLDING COMPANY LLC
    Inventors: Michael Ferrari, Jeffrey Wilson, Sandeep Chandrashekhara
  • Publication number: 20210374007
    Abstract: Targetless snapshot schedules are defined by policy objects that include a snap creation interval, maximum snap count, and schedule ID. Multiple schedule IDs can be associated with a single storage object to implement different concurrent targetless snapshot schedules with a single storage object. Multiple storage objects may use the same targetless snapshot schedule independently. Because the targetless snapshot schedules are implemented independently, discard of old snapshots to maintain a snap count for a first storage object does not cause discard of snapshots for a second storage object. Further, discard of old snapshots to maintain a snap count for a first schedule does not cause discard of snapshots for a second schedule applied to the same storage object.
    Type: Application
    Filed: May 29, 2020
    Publication date: December 2, 2021
    Applicant: EMC IP HOLDING COMPANY LLC
    Inventors: Nicholas Von Hein, Michael Ferrari, Daryl Kinney, Shakil Anwar, Tao Tao
  • Publication number: 20210374017
    Abstract: Snapshots may be managed on a data storage system including logical storage unit including data portions. For a first logical storage unit, a first snapshot pointer structure may be provided including entries, each entry corresponding to a physical storage location at which data is stored for a data portion of the first logical storage unit at a particular point in time. A first virtual snapshot lookup table may be provided for a first portion of the first logical storage unit, the first virtual snapshot lookup table including a plurality of entries, each entry corresponding to a respective data portion of the first logical storage unit and including a reference to a respective entry of the first snapshot pointer structure. The virtual lookup table may correspond to multiple snapshots of the first logical storage unit that have a same value for each data portion of the at least first portion.
    Type: Application
    Filed: May 28, 2020
    Publication date: December 2, 2021
    Applicant: EMC IP Holding Company LLC
    Inventors: Kevin M. Tobin, Andrew L. Chanler, Michael Ferrari, Jeffrey Wilson
  • Publication number: 20210373781
    Abstract: A snapshot lookup table (SLT) and snapshot pointer structure(s) (SPSs) may be provided for a logical data unit (LSU), each SPS entry corresponding to an LSU data portion and a physical storage location at which data is stored for the data portion for a particular snapshot. A current lookup table (CLT) for a current time may be provided for an LSU, including an entry for each LSU data that points to a respective entry of an SPS. Each time a first write following the creation of a snapshot is made to an LSU data portion, the corresponding CLT entry may be updated to point to the SPS entry that was updated to point to an LSU track table entry. To create a snapshot, a snapshot lookup table (SLT) is created for each snapshot, and the contents of the CLT are copied to the newly created SLT.
    Type: Application
    Filed: May 28, 2020
    Publication date: December 2, 2021
    Applicant: EMC IP Holding Company LLC
    Inventors: Jeffrey Wilson, Michael Ferrari, Mark J. Halstead, Sandeep Chandrashekara
  • Publication number: 20210374095
    Abstract: A first direct index lookup table represents the current state of a storage object using entries with references corresponding to tracks of the storage object. A second direct index lookup table represents a first targetless snapshot of the storage object. A virtual replication data pointer table maps the entries of both the first direct index lookup table and the entries of the second direct index lookup table to backend storage via a system replication data pointer table. Updates to the storage object are represented using new entries in the first direct index lookup table and the system replication data pointer table. Movement of a track that is represented in multiple targetless snapshots that are represented by multiple direct index lookup tables is represented by updating the corresponding virtual replication data pointer table and system replication data pointer table rather than updating each of the direct index lookup tables.
    Type: Application
    Filed: May 28, 2020
    Publication date: December 2, 2021
    Applicant: EMC IP HOLDING COMPANY LLC
    Inventors: Jeffrey Wilson, Michael Ferrari, Sandeep Chandrashekhara
  • Patent number: 11188425
    Abstract: Snapshots may be managed on a data storage system including logical storage unit including data portions. For a first logical storage unit, a first snapshot pointer structure may be provided including entries, each entry corresponding to a physical storage location at which data is stored for a data portion of the first logical storage unit at a particular point in time. A first virtual snapshot lookup table may be provided for a first portion of the first logical storage unit, the first virtual snapshot lookup table including a plurality of entries, each entry corresponding to a respective data portion of the first logical storage unit and including a reference to a respective entry of the first snapshot pointer structure. The virtual lookup table may correspond to multiple snapshots of the first logical storage unit that have a same value for each data portion of the at least first portion.
    Type: Grant
    Filed: May 28, 2020
    Date of Patent: November 30, 2021
    Assignee: EMC IP Holding Company LLC
    Inventors: Kevin M. Tobin, Andrew L. Chanler, Michael Ferrari, Jeffrey Wilson
  • Patent number: 11100008
    Abstract: Memory may be used more efficiently for snapshot metadata by reducing a size of a snapshot metadata object, for example, by removing free nodes from the snapshot metadata object. Removing free nodes may include consolidating free nodes into a single page of a snapshot metadata object and de-allocating the page from the memory allocated for the data structure. Consolidation of free nodes may be achieved by identifying active nodes in the single page, and swapping these active nodes with free nodes from other pages until the single page includes only free nodes. The nodes of the single page that were already free and the active nodes that were swapped with free nodes from another page may be designated for de-allocation. This designating may result in all nodes of the single page being designated for de-allocation, after which the single page of nodes may be de-allocated.
    Type: Grant
    Filed: November 1, 2019
    Date of Patent: August 24, 2021
    Assignee: EMC IP Holding Company LLC
    Inventors: Jeffrey Wilson, Michael Ferrari, Shruti Gupta, George F. Lettery
  • Publication number: 20210240568
    Abstract: A remote data facility includes a primary storage volume on a first storage system mirrored to a backup storage volume on a second storage system. A nocopy clone of a production volume is added to the primary storage volume. A define process is used to cause the tracks of the nocopy clone to point to backend allocations of tracks of memory of the production volume. As tracks of the nocopy clone are defined, corresponding flags are marked as invalid to cause data associated with the tracks to be replicated across the remote data facility to the backup storage volume. Incremental clones can be added to the primary storage volume, defined, and replicated on the remote data facility using the same process. Nocopy clones and target-less nocopy snapshots of the backup storage volume are used to restore the production volume using failover/failback mechanisms of the remote data facility.
    Type: Application
    Filed: January 30, 2020
    Publication date: August 5, 2021
    Inventors: Akshay Kumar Srivastava, Sandeep Chandrashekhara, Michael Ferrari, Deepak Vokaliga, Darren Fernandes
  • Publication number: 20210157678
    Abstract: A no-copy clone of a logical storage unit is created. A define process is initiated for defining a target logical storage unit as the clone before activation of the target logical storage unit. By initiating the define process before activating the logical storage unit, there is a greater likelihood that, when a write operation is received for a data portion on the source logical storage unit or target logical storage unit after activation of the target LSU, the data portion will already be defined and not need to be defined when performing the write operation. When a write operation is received at the source logical storage unit, if the target logical storage unit is not active yet, the data of the write operation may be written to an allocated physical location for the data portion shared between the source and target logical storage units without updating any clone metadata.
    Type: Application
    Filed: November 22, 2019
    Publication date: May 27, 2021
    Applicant: EMC IP Holding Company LLC
    Inventors: Sandeep Chandrashekhara, Michael Ferrari, Jeffrey Wilson, Mark J. Halstead, Art Longden
  • Publication number: 20210133098
    Abstract: Snapshot metadata may include a plurality of pages of nodes, including active nodes and free nodes. It may be determined whether a snapshot metadata object is eligible for de-allocation, for example, of one or more of the pages of its snapshot metadata nodes. This determination may be based on a number of free nodes in the snapshot metadata object, for example, in relation to the quantity of nodes that are included in a snapshot metadata page. This determination may be made based on previous usage of the nodes allocated to the snapshot metadata object, for example, the number of active nodes relative to a total size of the snapshot metadata object. For example, a maximum extent of active nodes during one or more periods may be compared to a current extent of active nodes to determine whether the snapshot metadata object is eligible.
    Type: Application
    Filed: November 1, 2019
    Publication date: May 6, 2021
    Applicant: EMC IP Holding Company LLC
    Inventors: Jeffrey Wilson, Michael Ferrari, Shruti Gupta, George F. Lettery
  • Publication number: 20210133115
    Abstract: Memory may be used more efficiently for snapshot metadata by reducing a size of a snapshot metadata object, for example, by removing free nodes from the snapshot metadata object. Removing free nodes may include consolidating free nodes into a single page of a snapshot metadata object and de-allocating the page from the memory allocated for the data structure. Consolidation of free nodes may be achieved by identifying active nodes in the single page, and swapping these active nodes with free nodes from other pages until the single page includes only free nodes. The nodes of the single page that were already free and the active nodes that were swapped with free nodes from another page may be designated for de-allocation. This designating may result in all nodes of the single page being designated for de-allocation, after which the single page of nodes may be de-allocated.
    Type: Application
    Filed: November 1, 2019
    Publication date: May 6, 2021
    Applicant: EMC IP Holding Company LLC
    Inventors: Jeffrey Wilson, Michael Ferrari, Shruti Gupta, George F. Lettery
  • Patent number: 10853389
    Abstract: Techniques for providing snapshots of logical devices may include: receiving a first request to create a first snapshot of a logical device; responsive to the first request, performing first processing including storing first information in a cache slot, the first information identifying the first snapshot and the logical device used as a source of the first snapshot; receiving a second request to activate one or more snapshots, including the first snapshot, identified by information stored in the cache slot; and responsive to receiving the second request, performing second processing including initiating execution of an asynchronous process that performs snapshot activation processing for the one or more snapshots identified by the cache slot.
    Type: Grant
    Filed: May 2, 2018
    Date of Patent: December 1, 2020
    Assignee: EMC IP Holding Company LLC
    Inventors: Sandeep Chandrashekhara, Michael Ferrari, George F. Lettery, Nicholas W. Von Hein, Shruti Gupta
  • Patent number: 10852952
    Abstract: Techniques for processing I/O operations may include: selecting a logical device having at least one snapshot on a data storage system; sending, from a host to the data storage system, a first hint for a first write I/O operation directed to a first location on the logical device, wherein said sending the first hint is performed prior to the host sending the first write I/O operation to the data storage system; and responsive to receiving the first hint regarding the first write I/O operation to the first location of the logical device having at least one snapshot, performing preprocessing for the first write I/O operation. Hints may also be sent for I/O operations directed to a target device linked to a snapshot of the logical device. The data storage system may perform preprocessing for the I/O operations directed to the target device linked to the snapshot.
    Type: Grant
    Filed: July 23, 2019
    Date of Patent: December 1, 2020
    Assignee: EMC IP Holding Company LLC
    Inventors: Jaeyoo Jung, Michael Ferrari, Arieh Don
  • Publication number: 20200349020
    Abstract: An apparatus in one embodiment comprises at least one processing device having a processor coupled to a memory. The processing device is configured to maintain, for logical storage volumes of a storage system, device sequence numbers for snapshot and extent copy operations. The processing device is also configured to maintain, for at least one track of the logical storage volumes, a track sequence number representing the state of the track with respect to the snapshot and extent copy operations. The processing device is further configured to receive input/output operations directed to the logical storage volumes from host devices coupled to the storage system while at least one snapshot or extent copy operation for the logical storage volumes is in progress, and to utilize the track sequence numbers and the device sequence numbers to determine processing of the received input/output operations while the snapshot or extent copy operations are in progress.
    Type: Application
    Filed: April 30, 2019
    Publication date: November 5, 2020
    Inventors: Sandeep Chandrashekhara, David T. Tsang, Michael Ferrari, Jeffrey Wilson, Mark J. Halstead
  • Patent number: 10824513
    Abstract: An apparatus in one embodiment comprises at least one processing device having a processor coupled to a memory. The processing device is configured to maintain, for logical storage volumes of a storage system, device sequence numbers for snapshot and extent copy operations. The processing device is also configured to maintain, for at least one track of the logical storage volumes, a track sequence number representing the state of the track with respect to the snapshot and extent copy operations. The processing device is further configured to receive input/output operations directed to the logical storage volumes from host devices coupled to the storage system while at least one snapshot or extent copy operation for the logical storage volumes is in progress, and to utilize the track sequence numbers and the device sequence numbers to determine processing of the received input/output operations while the snapshot or extent copy operations are in progress.
    Type: Grant
    Filed: April 30, 2019
    Date of Patent: November 3, 2020
    Assignee: EMC IP Holding Company LLC
    Inventors: Sandeep Chandrashekhara, David T. Tsang, Michael Ferrari, Jeffrey Wilson, Mark J. Halstead
  • Patent number: 10635542
    Abstract: To allow prompt creation of a target-less snapshot of a target logical volume, after the target logical volume has been linked to a target-less snapshot to allow host access to the target-less snapshot, and prior to all the tracks of the target logical volume being defined with regard to data from the target-less snapshot, a target device sequence number is maintained for the target logical volume, and incremented each time a target-less snapshot is linked to the target logical volume. A target track sequence number is maintained for each track of the target logical volume, and updated each time target-less snapshot data is moved to the corresponding track. The target device sequence number and target track sequence numbers are compared prior to performing host I/O operations directed to the target logical volume to ensure data correctness on a track by track basis.
    Type: Grant
    Filed: April 25, 2017
    Date of Patent: April 28, 2020
    Assignee: EMC IP Holding Company LLC
    Inventors: Sandeep Chandrashekhara, Ning Wu, Michael Ferrari, George Lettery