Patents by Inventor Boris Glimcher

Boris Glimcher 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: 20210373786
    Abstract: A method, computer program product, and computing system for generating one or more unique network addresses for one or more storage array enclosures of a storage system. The one or more unique network addresses may be advertised to one or more storage processors of the storage system. The one or more storage processors may be configured to communicate with a plurality of storage devices of the one or more storage array enclosures based upon, at least in part, the one or more unique network addresses of the one or more storage array enclosures.
    Type: Application
    Filed: May 29, 2020
    Publication date: December 2, 2021
    Inventors: Boris Glimcher, Dmitry Krivenok
  • Publication number: 20210342075
    Abstract: A method, computer program product, and computing system for receiving, at a first baseboard management controller (BMC) of a first node, a fence request from a central processing unit (CPU) of the first node. The first BMC of the first node may communicate with a second BMC of a second node, wherein the first node and the second node are communicatively coupled to a plurality of storage drives. The first BMC and the second BMC may determine which node of the first node and the second node to fence from the plurality of storage drives. One of the first node and the second node may be fenced, via one of the first BMC and the second BMC, from the plurality of storage drives, thus defining a fenced node.
    Type: Application
    Filed: April 30, 2020
    Publication date: November 4, 2021
    Inventors: Aric Hadav, Boris Glimcher, Amitai Alkalay
  • Patent number: 11115490
    Abstract: A method for performing host based read cache for storage area networks (SANs) supporting Non-Volatile Memory Express over Fabrics (NVMeF) with validation. The method includes upon a first read operation from a client system of a storage array, receiving metadata with a read response regarding location of data subject to the read operation. The method also includes performing, by the client system, direct NVMeF reads from a namespace offset from the metadata. The direct NVMeF reads bypass a software stack of the storage array. The method further includes upon receiving a data block at the client system, using a signature from the metadata to perform validation on the data.
    Type: Grant
    Filed: July 31, 2018
    Date of Patent: September 7, 2021
    Assignee: EMC IP Holding Company LLC
    Inventors: Boris Glimcher, Zvi Schneider, Amitai Alkalay, Kirill Shoikhet
  • Publication number: 20210263664
    Abstract: A storage system comprises a disk array enclosure comprising an enclosure controller, a cache comprising a metadata journal, a plurality of data storage devices and a plurality of metadata storage devices. The enclosure controller is configured to write a stripe metadata page to the metadata storage devices that corresponds to a stripe of data stored on the data storage devices and to determine that the write of the stripe metadata page failed for a first metadata storage device. The enclosure controller is configured to add an entry to the metadata journal based on the determination that the write failed. The entry comprises an indication of the first metadata storage device and the stripe of data. The enclosure controller is configured to set an indication in a data structure associated with the disk array enclosure that the stripe metadata page has not been written to the first metadata storage device.
    Type: Application
    Filed: February 25, 2020
    Publication date: August 26, 2021
    Inventors: Boris Glimcher, Amitai Alkalay
  • Publication number: 20210263678
    Abstract: A storage system comprises a disk array enclosure comprising at least one enclosure controller, a plurality of data storage devices and at least one metadata storage device. The enclosure controller is configured to receive a write operation comprising data to be stored on at least one of the plurality of data storage devices and to determine a logical identifier for the data. The enclosure controller is further configured to determine a physical location on the at least one of the plurality of data storage devices for storing the data and to store the data at the physical location. The enclosure controller is further configured to update metadata stored on the at least one metadata storage device based at least in part on the physical location and the logical identifier and to return the logical identifier as a response to the received write operation.
    Type: Application
    Filed: February 25, 2020
    Publication date: August 26, 2021
    Inventors: Boris Glimcher, Amitai Alkalay
  • Patent number: 11086780
    Abstract: An aspect includes providing a scratchpad memory to at least one persistent storage device of a plurality of persistent storage devices in a storage array. The scratchpad memory includes non-volatile storage. An aspect also includes designating the scratchpad memory for storing data corresponding to write operations implemented by a storage system, apportioning the scratchpad memory among each storage controller of a plurality of storage controllers in the storage system, and receiving, at the scratchpad memory, a write request from one of the storage controllers. An aspect further includes writing data of the write request to a location in the scratchpad memory based on the apportioning and corresponding to the one of the storage controllers.
    Type: Grant
    Filed: March 23, 2020
    Date of Patent: August 10, 2021
    Assignee: EMC IP Holding Company LLC
    Inventors: Boris Glimcher, Amitai Alkalay
  • Patent number: 11079969
    Abstract: A storage system comprises a disk array enclosure comprising at least one enclosure controller, a plurality of data storage devices and at least one metadata storage device. The enclosure controller is configured to receive a write operation comprising data to be stored on at least one of the plurality of data storage devices and to determine a logical identifier for the data. The enclosure controller is further configured to determine a physical location on the at least one of the plurality of data storage devices for storing the data and to store the data at the physical location. The enclosure controller is further configured to update metadata stored on the at least one metadata storage device based at least in part on the physical location and the logical identifier and to return the logical identifier as a response to the received write operation.
    Type: Grant
    Filed: February 25, 2020
    Date of Patent: August 3, 2021
    Assignee: EMC IP Holding Company LLC
    Inventors: Boris Glimcher, Amitai Alkalay
  • Patent number: 11061618
    Abstract: A storage system comprises a disk array enclosure comprising an enclosure controller, a plurality of data storage devices and a plurality of metadata storage devices. The enclosure controller is configured to receive a write operation comprising data to be stored on at least one of the plurality of data storage devices and to determine a logical identifier for the data based at least in part on the received write operation. The enclosure controller is further configured to determine a metadata identifier corresponding to a metadata page stored on the at least one metadata storage device that is associated with the logical identifier and to update the metadata page based at least in part on the metadata identifier. The enclosure controller is further configured to return the logical identifier and the metadata identifier as a response to the received write operation.
    Type: Grant
    Filed: February 25, 2020
    Date of Patent: July 13, 2021
    Assignee: EMC IP Holding Company LLC
    Inventors: Boris Glimcher, Amitai Alkalay
  • Patent number: 11055188
    Abstract: A storage system comprises a plurality of enclosures and a storage controller. Each enclosure comprises at least one processing device and a plurality of drives configured in accordance with a redundant array of independent disks (RAID) arrangement. The storage controller obtains an input-output request to read a target data page and issues a command to the at least one processing device of a given enclosure. Responsive to receiving the command, the at least one processing device of the given enclosure obtains data pages associated with a given stripe from the plurality of drives of the given enclosure. The at least one processing device rebuilds the given stripe based at least in part on the obtained data pages, obtains the target data page from the rebuilt given stripe and provides the obtained target data page to the storage controller.
    Type: Grant
    Filed: April 12, 2019
    Date of Patent: July 6, 2021
    Assignee: EMC IP Holding Company LLC
    Inventors: Amitai Alkalay, Boris Glimcher, Zvi Schneider, Aric Hadav
  • Patent number: 10852965
    Abstract: A storage system comprising a plurality of storage devices and an associated storage controller. The plurality of storage devices are configured to store data blocks distributed across the plurality of storage devices in a plurality of data stripes. The plurality of data stripes comprise a first set of data stripes and a second set of data stripes. The storage controller is configured to receive data associated with at least one input-output request and to store the received data sequentially in at least one data stripe of the first set of data stripes. The controller is further configured to determine whether or not an amount of data stored in the first set of data stripes is greater than a threshold amount of data and in response to determining that the amount of data stored in the first set of data stripes is greater than the threshold amount of data, to destage the at least one data stripe of the first set of data stripes to the second set of data stripes.
    Type: Grant
    Filed: October 30, 2018
    Date of Patent: December 1, 2020
    Assignee: EMC IP Holding Company LLC
    Inventors: Boris Glimcher, Zvi Schneider, Amitai Alkalay, Kirill Shoikhet
  • Patent number: 10831407
    Abstract: A storage system comprises a plurality of enclosures and a storage controller. Each enclosure comprises at least one processing device and a plurality of drives configured in accordance with a redundant array of independent disks (RAID) arrangement. The storage controller obtains data pages associated with at least one input-output request and provides the obtained data pages to the at least one processing device of a given enclosure. The storage controller issues a command to the at least one processing device of the given enclosure to perform at least one operation based at least in part on the obtained data pages. The at least one processing device of the given enclosure receives the obtained data pages from the storage controller, calculates RAID parities based at least in part on the received data pages, and stores the data pages and RAID parities on the plurality of drives according to the RAID arrangement.
    Type: Grant
    Filed: January 31, 2019
    Date of Patent: November 10, 2020
    Assignee: EMC IP Holding Company LLC
    Inventors: Boris Glimcher, Amitai Alkalay, Anton Kucherov, Zvi Schneider
  • Publication number: 20200327024
    Abstract: A storage system comprises a plurality of enclosures and a storage controller. Each enclosure comprises at least one processing device and a plurality of drives configured in accordance with a redundant array of independent disks (RAID) arrangement. The storage controller obtains an input-output request to read a target data page and issues a command to the at least one processing device of a given enclosure. Responsive to receiving the command, the at least one processing device of the given enclosure obtains data pages associated with a given stripe from the plurality of drives of the given enclosure. The at least one processing device rebuilds the given stripe based at least in part on the obtained data pages, obtains the target data page from the rebuilt given stripe and provides the obtained target data page to the storage controller.
    Type: Application
    Filed: April 12, 2019
    Publication date: October 15, 2020
    Inventors: Amitai Alkalay, Boris Glimcher, Zvi Schneider, Aric Hadav
  • Publication number: 20200249869
    Abstract: A storage system comprises a plurality of enclosures and a storage controller. Each enclosure comprises at least one processing device and a plurality of drives configured in accordance with a redundant array of independent disks (RAID) arrangement. The storage controller obtains data pages associated with an input-output request, provides the data pages to a processing device of a given enclosure, and issues a command to the processing device to perform at least one operation based at least in part on the data pages. The processing device of the given enclosure receives the data pages from the storage controller, generates compressed data pages based at least in part on the received data pages, stores one or more of the compressed data pages on the plurality of drives according to the RAID arrangement and returns information associated with the storage of the compressed data pages to the storage controller.
    Type: Application
    Filed: January 31, 2019
    Publication date: August 6, 2020
    Inventors: Boris Glimcher, Amitai Alkalay, Zvi Schneider
  • Publication number: 20200249868
    Abstract: A storage system comprises a plurality of enclosures and a storage controller. Each enclosure comprises at least one processing device and a plurality of drives configured in accordance with a redundant array of independent disks (RAID) arrangement. The storage controller obtains data pages associated with at least one input-output request and provides the obtained data pages to the at least one processing device of a given enclosure. The storage controller issues a command to the at least one processing device of the given enclosure to perform at least one operation based at least in part on the obtained data pages. The at least one processing device of the given enclosure receives the obtained data pages from the storage controller, calculates RAID parities based at least in part on the received data pages, and stores the data pages and RAID parities on the plurality of drives according to the RAID arrangement.
    Type: Application
    Filed: January 31, 2019
    Publication date: August 6, 2020
    Inventors: Boris Glimcher, Amitai Alkalay, Anton Kucherov, Zvi Schneider
  • Publication number: 20200133526
    Abstract: A storage system comprising a plurality of storage devices and an associated storage controller. The plurality of storage devices are configured to store data blocks distributed across the plurality of storage devices in a plurality of data stripes. The plurality of data stripes comprise a first set of data stripes and a second set of data stripes. The storage controller is configured to receive data associated with at least one input-output request and to store the received data sequentially in at least one data stripe of the first set of data stripes. The controller is further configured to determine whether or not an amount of data stored in the first set of data stripes is greater than a threshold amount of data and in response to determining that the amount of data stored in the first set of data stripes is greater than the threshold amount of data, to destage the at least one data stripe of the first set of data stripes to the second set of data stripes.
    Type: Application
    Filed: October 30, 2018
    Publication date: April 30, 2020
    Inventors: Boris Glimcher, Zvi Schneider, Amitai Alkalay, Kirill Shoikhet
  • Publication number: 20200045125
    Abstract: A method for performing host based read cache for storage area networks (SANs) supporting Non-Volatile Memory Express over Fabrics (NVMeF) with validation. The method includes upon a first read operation from a client system of a storage array, receiving metadata with a read response regarding location of data subject to the read operation. The method also includes performing, by the client system, direct NVMeF reads from a namespace offset from the metadata. The direct NVMeF reads bypass a software stack of the storage array. The method further includes upon receiving a data block at the client system, using a signature from the metadata to perform validation on the data.
    Type: Application
    Filed: July 31, 2018
    Publication date: February 6, 2020
    Applicant: EMC IP Holding Company LLC
    Inventors: Boris Glimcher, Zvi Schneider, Amitai Alkalay, Kirill Shoikhet