Patents by Inventor Lior Kamran

Lior Kamran 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: 20200042445
    Abstract: An aspect of cache recovery includes transmitting entries of a write cache (WC) journal (“entries”) to all nodes and, for each node, recovering the entries, detecting entries with a logical address owned by the node, and performing a recovery operation. The operation includes for each entry, and upon determining the node owns the A2N slice: if the A2N slice has been continuously owned (CO) by the node, and the entry is not owned by the node, marking the entry as WC remote and entry updates are requested from a remote WC owner; if the A2N slice has not been CO by the node, and the entry is not owned by the node, maintaining the entry and continuing write flow operations, marking the entry as WC remote and all entry updates are requested from the remote WC owner and inserting the entry to a recovery list.
    Type: Application
    Filed: July 31, 2018
    Publication date: February 6, 2020
    Applicant: EMC IP Holding Company LLC
    Inventors: Vladimir Shveidel, Lior Kamran
  • Publication number: 20200034308
    Abstract: A storage system comprises a plurality of storage devices and an associated storage controller. The plurality of storage devices are configured to store a plurality of logical units (LUNs) and snapshot data structures associated with the plurality of LUNs. The storage controller is configured to determine a mapping of a logical address associated with a pending read or write operation to a snapshot address associated with a given snapshot data structure of the storage system that comprises a plurality of nodes generated during point-in-time snapshots taken based on at least one of the LUNs, lock at least a portion of the given snapshot data structure during the read or write operation based on the determined mapping, and release the lock on the at least a portion of the given snapshot data structure in response to a completion of the read or write operation.
    Type: Application
    Filed: July 27, 2018
    Publication date: January 30, 2020
    Inventors: Vladimir Shveidel, Lior Kamran
  • Publication number: 20200034229
    Abstract: An apparatus comprises at least one processing device comprising a processor coupled to a memory. The processing device is configured to select a stripe column size for stripes of a data storage system, to determine a first compress block size for a first one of the stripes based on compressibility of data to be stored, to select a first prime number for computing parity blocks for the first stripe and a first number of sub-stripes for splitting stripe columns of the first stripe, to generate metadata specifying the first compress block size, the first prime number and the first number of sub-stripes for the first stripe, and to store data compressed using the first compress block size in the first stripe. The first prime number and first number of sub-stripes for the first stripe is different than a second prime number and second number of sub-stripes for a second stripe.
    Type: Application
    Filed: July 25, 2018
    Publication date: January 30, 2020
    Inventors: Zvi Schneider, Marcelo Taube, Lior Kamran, Alex Soukhman, David Krakov
  • Publication number: 20200034074
    Abstract: A clustered storage system in one embodiment comprises a plurality of nodes, with each of at least a subset of the nodes comprising a set of processing modules configured to communicate over one or more networks with corresponding sets of processing modules on other ones of the nodes. In conjunction with a failure of a first instance of a process running on a given one of the nodes and a subsequent restart of a second instance of the process, at least one of the processing modules is to identify at least one transfer buffer command of the first instance of the process, to identify a plurality of logically ordered commands of the first instance of the process, and to provide distinct treatment of the transfer buffer command relative to treatment of the logically ordered commands in a manner that ensures that the restart of the second instance of the process is not delayed to await completion of the transfer buffer command or the logically ordered commands.
    Type: Application
    Filed: July 24, 2018
    Publication date: January 30, 2020
    Inventors: Hillel Costeff, Lior Kamran, Zvi Schneider, Anton Kucherov
  • Publication number: 20200028907
    Abstract: A control module of a clustered storage system in one embodiment is configured to receive a write request for a data block of a page, to retrieve an existing content-based signature for the page, to identify from the existing content-based signature a first one of the data modules currently storing the page, and to compute a content-based signature of the data block. The control module is further configured to send the content-based signature of the data block to the first data module, to receive from the first data module an updated content-based signature for the page computed utilizing the content-based signature of the data block, to identify from the updated content-based signature a second one of the data modules that will store the page as updated to include the data block, and to provide information regarding the data block and the updated content-based signature to the second data module for utilization in storage of the updated page.
    Type: Application
    Filed: July 23, 2018
    Publication date: January 23, 2020
    Inventors: Lior Kamran, Amitai Alkalay, Zvi Schneider, Vladimir Shveidel, Oran Baruch
  • Publication number: 20200026779
    Abstract: A storage system in one embodiment comprises a plurality of storage devices storing data pages. Each data page has a content-based signature derived from that data page. The content-based signatures are associated with physical locations storing the data pages. In response to receipt of a write input/output (IO) request that includes a data segment that is smaller than a page granularity of the storage devices, a content-based signature associated with the data segment is determined which also corresponds to a target data page stored at one of the physical locations. In response to determining the content-based signature, an inflight write count corresponding to the content-based signature is incremented. In response to a decrement request to decrement a reference count of the physical location corresponding to the content-based signature, a decrement flag corresponding to the content-based signature is set in the data structure and the decrement request is postponed.
    Type: Application
    Filed: July 19, 2018
    Publication date: January 23, 2020
    Inventors: Vladimir Shveidel, Lior Kamran, Oran Baruch
  • Patent number: 10474496
    Abstract: A method is disclosed for dynamic multitasking in a storage system, the storage system including a first storage server configured to execute a first I/O service process and one or more second storage servers, the method comprising: detecting a first event for triggering a context switch; transmitting to each of the second storage servers an instruction to stop transmitting internal I/O requests to the first I/O service process, the instruction including an identifier corresponding to the first I/O service process, the identifier being arranged to distinguish the first I/O service process from other first I/O service processes that are executed by the first storage server concurrently with the first I/O service process; deactivating the first I/O service process by pausing a frontend of the first I/O service process, and pausing one or more I/O providers of the first I/O service process; and executing a first context switch between the first I/O service process and a second process.
    Type: Grant
    Filed: October 17, 2018
    Date of Patent: November 12, 2019
    Assignee: EMC IP Holding Company LLC
    Inventors: Lior Kamran, Amitai Alkalay, Zvi Schneider
  • Patent number: 9971648
    Abstract: A system, computer program product, and computer-executable method of managing parity data of a Redundant Array of Independent Disks (RAID) on a data storage system, where the data storage system stores a first set of parity data and retains metadata associated with the first set of parity data, the system, computer program product, and computer-executable method including allocating a set of locations on the data storage system for a second set of parity data, processing the second set of parity data, and updating the metadata associated with the first set of parity data.
    Type: Grant
    Filed: December 29, 2015
    Date of Patent: May 15, 2018
    Assignee: EMC IP Holding Company LLC
    Inventors: Zvi Schneider, Tal Ben-Moshe, Niko Farhi, Lior Kamran
  • Patent number: 9891994
    Abstract: A system, computer program product, and computer-executable method of implementing a redundant array of independent disk (RAID) system wherein the RAID, the computer-executable method comprises storing data storage blocks arranged in a first plurality of data rows and a second plurality of data columns and storing parity data in defined parity blocks, wherein a portion of the defined parity blocks include column parity data.
    Type: Grant
    Filed: December 30, 2015
    Date of Patent: February 13, 2018
    Assignee: EMC IP Holding Company LLC
    Inventors: Zvi Schneider, Tal Ben-Moshe, Niko Farhi, Lior Kamran