Patents by Inventor Vladimir Shveidel

Vladimir Shveidel 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).

  • Patent number: 11645174
    Abstract: An apparatus in one embodiment comprises at least one processing device comprising a processor coupled to a memory, with the processing device being configured to detect a failure of at least one storage node that impacts a write cache destaging process in a distributed content addressable storage (CAS) system comprising a plurality of storage nodes each associated with one or more storage devices. Responsive to the detected failure, the processing device issues one or more write cache metadata preload commands to direct one or more other ones of the storage nodes to preload from their associated storage devices metadata characterizing one or more data pages that are subject to the write cache destaging process, thereby illustratively reducing address lock contention in the CAS system. The processing device illustratively comprises at least a portion of a distributed storage controller of the CAS system. Other embodiments include methods and computer program products.
    Type: Grant
    Filed: October 28, 2019
    Date of Patent: May 9, 2023
    Assignee: Dell Products L.P.
    Inventors: Lior Kamran, Vladimir Shveidel
  • Publication number: 20230134128
    Abstract: A method is used for uninterrupted data flushing in a storage system. An input/output (I/O) request is received. A pointer for a filling flushing work set (FWS) is atomically switching. A copy of the pointer for the filling FWS is saved, and the counter associated with a FWS referenced by the saved copy of the pointer is incremented. The saved copy of the pointer and the pointer for the filling FWS are compared, and upon determining that the saved copy of the pointer and the pointer for the filling are FWS equal, the I/O request is committed to a page descriptor ring and the counter associated with the FWS referenced by the saved copy of the pointer is decremented.
    Type: Application
    Filed: October 28, 2021
    Publication date: May 4, 2023
    Applicant: Dell Products L.P.
    Inventors: Geng Han, Vladimir Shveidel, Yousheng Liu
  • Publication number: 20230137146
    Abstract: A method is used for uninterrupted data flushing in a storage system. A barrier in a page descriptor ring is determined to distinguish between a filling flushing work set (FWS) and a frozen FWS. A sequence number of an I/O request is compared to the barrier. A FWS corresponding to the I/O request is identified based on the comparison. The I/O request is committed to the identified FWS.
    Type: Application
    Filed: October 29, 2021
    Publication date: May 4, 2023
    Applicant: Dell Products L.P.
    Inventors: Yousheng Liu, Vladimir Shveidel, Geng Han
  • Publication number: 20230130096
    Abstract: A method is used for improving performance in a storage system during deduplication. A processor receives a request to write data. A determination is made that the data can be deduplicated. A non-exclusive lock for a page in storage with a reference count of the data may be obtained, and an instruction to increment the reference count for the data may be stored in a metadata journal. The non-exclusive lock for the page may be released.
    Type: Application
    Filed: October 26, 2021
    Publication date: April 27, 2023
    Applicant: Dell Products L.P.
    Inventors: Michael Litvak, Vladimir Shveidel, Bar David, Uri Shabi
  • Publication number: 20230118155
    Abstract: In at least one embodiment, processing can include receiving a metadata (MD) structure including MD pages; and performing a MD split operation with respect to a first of the MD pages, wherein said performing the MD split operation includes: generating a first ALI (abstract logical index) representing a new MD page that is unallocated and is a child of the first MD page; and storing an entry in a bucket of an in-memory MD log for the first ALI, wherein the entry denotes a mapping between the first ALI and a corresponding LI (logical index), wherein the entry indicates that the corresponding LI associated with the first ALI is invalid since the first ALI represents a new MD page which is unallocated and not associated with physical storage; and destaging the in-memory MD log, wherein said destaging includes allocating first physical storage for the new MD page.
    Type: Application
    Filed: October 15, 2021
    Publication date: April 20, 2023
    Applicant: Dell Products L.P.
    Inventors: Vladimir Shveidel, Ronen Gazit, Bar David
  • Publication number: 20230106982
    Abstract: In a dual node system, each node can store metadata updates in a volatile memory metadata log. Metadata pages can be used to access data stored on a volume. A node designated as preferred or affined for a volume can be expected to receive I/Os directed to the volume. A preferred node for a volume can record, in its volatile memory metadata log, the metadata changes for the metadata pages used to access data stored on the volume. A non-preferred or non-affined node for the volume can infrequently receive I/Os directed to the volume. A non-preferred node for a volume can record, in its volatile memory metadata log, pointers or references to the metadata changes for the metadata pages used to access data stored on the volume, where the pointers or references map to persisted copies of the meta changes as stored in a persisted metadata log.
    Type: Application
    Filed: October 5, 2021
    Publication date: April 6, 2023
    Applicant: Dell Products L.P.
    Inventors: Bar David, Dror Zalstein, Vladimir Shveidel
  • Patent number: 11620062
    Abstract: In at least one embodiment, processing can include receiving a metadata (MD) structure including MD pages; and performing a MD split operation with respect to a first of the MD pages, wherein said performing the MD split operation includes: generating a first ALI (abstract logical index) representing a new MD page that is unallocated and is a child of the first MD page; and storing an entry in a bucket of an in-memory MD log for the first ALI, wherein the entry denotes a mapping between the first ALI and a corresponding LI (logical index), wherein the entry indicates that the corresponding LI associated with the first ALI is invalid since the first ALI represents a new MD page which is unallocated and not associated with physical storage; and destaging the in-memory MD log, wherein said destaging includes allocating first physical storage for the new MD page.
    Type: Grant
    Filed: October 15, 2021
    Date of Patent: April 4, 2023
    Assignee: Dell Products L.P.
    Inventors: Vladimir Shveidel, Ronen Gazit, Bar David
  • Patent number: 11615028
    Abstract: A method, computer program product, and computing system for receiving a flush request for a metadata page stored in a storage array of a multi-node storage system. The flush request may be queued on a flush request lock queue on at least one node of the multi-node storage system. One or more flush requests may be processed, via multiple nodes of the multi-node storage system, on the metadata page based upon, at least in part, the flush request lock queue.
    Type: Grant
    Filed: April 22, 2021
    Date of Patent: March 28, 2023
    Assignee: EMC IP Holding Company, LLC
    Inventors: Jenny Derzhavetz, Vladimir Shveidel, Dror Zalstein, Bar David
  • Patent number: 11616722
    Abstract: At least one processing device comprises a processor and a memory coupled to the processor. The at least one processing device is configured to implement adaptive flow control in conjunction with processing of input-output operations in a storage system. The adaptive flow control comprises a first feedback loop in which a window size defining an amount of concurrent processing of the input-output operations in the storage system is adjusted responsive to a measured latency for processing of one or more of the input-output operations. The adaptive flow control further comprises a second feedback loop in which at least one latency threshold used to control adjustment of the window size in the first feedback loop is adjusted. The at least one processing device illustratively comprises at least one processing core of a multi-core storage node of a distributed storage system.
    Type: Grant
    Filed: October 22, 2020
    Date of Patent: March 28, 2023
    Assignee: EMC IP Holding Company LLC
    Inventors: Vladimir Shveidel, Lior Kamran
  • Patent number: 11599460
    Abstract: A method, computer program product, and computing system for assigning a plurality of unique sequential identifiers to a plurality of tablets in a cache memory system. One or more metadata deltas associated with a metadata page stored in a storage array may be written to the plurality of tablets in the cache memory system. Each metadata delta stored in at least one tablet of the plurality of tablets may be written to the metadata page stored in the storage array, thus defining one or more destage tablets. A largest unique sequential identifier from the plurality of unique sequential identifiers assigned to the one or more destage tablets, may be written to the storage array, thus defining a current tablet identifier for the metadata page.
    Type: Grant
    Filed: April 22, 2021
    Date of Patent: March 7, 2023
    Assignee: EMC IP Holding Company, LLC
    Inventors: Jenny Derzhavetz, Vladimir Shveidel, Dror Zalstein, Bar David
  • Patent number: 11593028
    Abstract: A method of operating a computing device for processing data is provided. The method includes (a) monitoring a set of performance characteristics of the processing of the data; (b) periodically calculating, using a predefined set of coefficients, a linear combination of the monitored set of performance characteristics to yield a combined metric; and (c) upon detecting that the combined metric exceeds a threshold while operating in a first processing mode, transitioning from operating in the first processing mode to operating in a second processing mode. (1) The second processing mode has a higher bandwidth than the first processing mode, and (2) processing of data in the second processing mode is less robust than processing of data in the first processing mode. An apparatus, system, and computer program product for performing a similar method are also provided.
    Type: Grant
    Filed: March 11, 2021
    Date of Patent: February 28, 2023
    Assignee: EMC IP Holding Company LLC
    Inventors: Vladimir Shveidel, Alexei Kabishcer
  • Patent number: 11593266
    Abstract: Techniques performed by a computing device of storing data in a data storage system are provided. A method includes (a) storing references to write commands within entries of a first chained hash table (CHT), the first CHT being pointed to by a first data structure representative of a logical disk; (b) keeping track of a load factor of the first CHT during operation; and (c) in response to determining that the load factor of the first CHT has transitioned outside of predetermined bounds: (1) creating a second CHT and a second data structure representative of the logical disk, the second CHT being pointed to by the second data structure; (2) linking the second data structure to the first data structure via a linked list; and (3) storing references to new write commands directed at the logical disk within entries of the second CHT rather than the first CHT.
    Type: Grant
    Filed: July 27, 2021
    Date of Patent: February 28, 2023
    Assignee: EMC IP Holding Company LLC
    Inventors: Vladimir Shveidel, Geng Han, Xinlei Xu
  • Publication number: 20230030703
    Abstract: Techniques performed by a computing device of storing data in a data storage system are provided. A method includes (a) storing references to write commands within entries of a first chained hash table (CHT), the first CHT being pointed to by a first data structure representative of a logical disk; (b) keeping track of a load factor of the first CHT during operation; and (c) in response to determining that the load factor of the first CHT has transitioned outside of predetermined bounds: (1) creating a second CHT and a second data structure representative of the logical disk, the second CHT being pointed to by the second data structure; (2) linking the second data structure to the first data structure via a linked list; and (3) storing references to new write commands directed at the logical disk within entries of the second CHT rather than the first CHT.
    Type: Application
    Filed: July 27, 2021
    Publication date: February 2, 2023
    Inventors: Vladimir Shveidel, Geng Han, Xinlei Xu
  • Publication number: 20230025962
    Abstract: A method, computer program product, and computing system for executing a plurality of IO traces on a storage system. At least one vertical flow and at least one horizontal flow associated with the at least one vertical flow may be defined for the plurality of IO traces. A hierarchical representation of the plurality of IO traces may be generated with the at least one vertical flow and the at least one horizontal flow associated with the at least one vertical flow defined for the plurality of IO traces.
    Type: Application
    Filed: July 23, 2021
    Publication date: January 26, 2023
    Inventors: Geng Han, Vladimir Shveidel, Jibing Dong
  • Publication number: 20230026819
    Abstract: Processing a read request to read metadata from an entry of a metadata page may include: determining whether the metadata page is cached; responsive to determining the metadata page is cached, obtaining the first metadata from the cached metadata page; responsive to determining the metadata page is not cached, determining whether the requested metadata is in a metadata log of metadata changes stored in a volatile memory; and responsive to determining the metadata is the metadata log of metadata changes stored in the volatile memory, obtaining the requested metadata from the metadata log. Processing a write request that overwrites an existing value of a metadata page with an updated value may include: recording a metadata change in the metadata log that indicates to update the metadata page with the updated value; and performing additional processing during destaging that uses the existing value prior to overwriting it with the updated value.
    Type: Application
    Filed: July 20, 2021
    Publication date: January 26, 2023
    Applicant: EMC IP Holding Company LLC
    Inventors: Philip Love, Vladimir Shveidel, Bar David
  • Patent number: 11561700
    Abstract: Load balancing may include: receiving I/O workloads of storage server entities that service I/O operations received for logical devices, wherein each logical device has an owner that is one of the storage server entities that processes I/O operations directed to the logical device; determining normalized I/O workloads corresponding to the I/O workloads of the storage server entities; determining, in accordance with utilization criteria, imbalance criteria and the normalized I/O workloads, whether to rebalance the I/O workloads of the storage server entities; and responsive to determining to rebalance the I/O workloads of the storage server entities, performing processing to alleviate a detected I/O workload imbalance between two storage server entities. The processing may include moving logical device from a first storage server entity to a second storage server entity; and transferring ownership of the logical device from the first to the second storage server entity.
    Type: Grant
    Filed: January 21, 2021
    Date of Patent: January 24, 2023
    Assignee: EMC IP Holding Company LLC
    Inventors: Shaul Dar, Gajanan S. Natu, Vladimir Shveidel
  • Publication number: 20230004448
    Abstract: Processing may be performed in accordance with a policy to assign roles of winner and loser between two nodes. The roles may be used in connection with deadlock resolution processing. A deadlock or potential deadlock may be detected between the two nodes performing processing for two transactions In response to detecting the deadlock or potential deadlock, using a current state may be used to determine whether to perform the deadlock resolution processing to resolve the deadlock or potential deadlock. The current state may indicate whether assignment of the winner and loser roles between the two nodes is in progress. Responsive to the current state indicating that processing is not in progress to assign roles of winner and loser between the two nodes, the current state may be used perform deadlock resolution processing to resolve the deadlock or potential deadlock. The current state may denote which node is the current winner.
    Type: Application
    Filed: July 1, 2021
    Publication date: January 5, 2023
    Applicant: EMC IP Holding Company LLC
    Inventors: Vladimir Shveidel, Amitai Alkalay, Bar David
  • Publication number: 20220414086
    Abstract: Techniques for reconstructing or building metadata pages in storage nodes that have a delta-log based architecture. The techniques include walking “up” an ancestor chain of a metadata page, detecting the most recent delta update for a metadata entry of the metadata page, writing the most recent delta update to a location of the metadata entry in the metadata page, setting a bitmap entry corresponding to the location of the metadata entry in the metadata page, detecting a less recent delta update for the metadata entry of the metadata page, and, having previously set the bitmap entry corresponding to the location of the metadata entry in the metadata page, avoiding writing the less recent delta update to the location of the metadata entry in the metadata page. In this way, the need to save in memory the entire ancestor chain of the metadata page can be eliminated.
    Type: Application
    Filed: June 23, 2021
    Publication date: December 29, 2022
    Inventors: Vladimir Shveidel, Ami Sabo
  • Publication number: 20220414062
    Abstract: A method comprises maintaining stripe metadata corresponding to stripes of data stored on a plurality of storage devices. The stripe metadata comprises a first timestamp, a second timestamp and a read count for each stripe. The method comprises obtaining a read request associated with a given stripe and having an associated timestamp and determining whether or not a time period for the given stripe has been exceeded. The method comprises updating the stripe metadata corresponding to the given stripe based at least in part on the determination and the associated timestamp and determining a read access frequency of the given stripe based at least in part on the read count, the first timestamp and the second timestamp of the updated stripe metadata. The method comprises performing at least one of a defragmentation process and a rebuild process based at least in part on the determined read access frequency.
    Type: Application
    Filed: June 28, 2021
    Publication date: December 29, 2022
    Inventors: Lior Kamran, Vladimir Shveidel, Amitai Alkalay
  • Publication number: 20220398034
    Abstract: An apparatus comprises a processing device. The processing device is configured to persistently store metadata pages on a plurality of storage devices. The metadata pages are organized into buckets. The processing device is configured to access a given metadata page based at least in part on a bucket identifier where the given metadata page corresponds to a given logical volume. The bucket identifier comprises a first portion comprising an indication of a given bucket range that corresponds to the given logical volume and a second portion comprising an indication of an offset into the given bucket range that corresponds to a grouping of buckets that correspond to the given logical volume. The grouping of buckets corresponds to the given logical volume. The bucket identifier further comprises a third portion comprising an indication of an offset into the grouping of buckets that corresponds to the bucket comprising the given metadata page.
    Type: Application
    Filed: June 11, 2021
    Publication date: December 15, 2022
    Inventors: Amitai Alkalay, Vladimir Shveidel, Lior Kamran