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: 11977531
    Abstract: A method, computer program product, and computer system for maintaining, by a computing device, mapper objects, wherein the mapper objects may be variable size and include tops, mids, and leafs. Only new pointers may be maintained inside successor tops and mids. An overwrite map structure may be maintained on each of the tops, mids, and leafs. In the overwrite map structure on a mid, a snapshotID of a leaf that was last updated may be provided, from which the mid is to be inherited based upon a received IO.
    Type: Grant
    Filed: January 25, 2023
    Date of Patent: May 7, 2024
    Assignee: Dell Products L.P.
    Inventors: Vladimir Shveidel, Amitai Alkalay
  • Publication number: 20240134839
    Abstract: A method, computer program product, and computing system for receiving a plurality of requests to perform an operation of a first operation type on a storage object. A shared write lock associated with the first operation type is provided to each thread requesting to perform an operation of the first operation type. Concurrent requests to perform operations of the first operation type on the storage object are processed by each requesting thread based upon, at least in part, the shared write lock associated with the first operation type provided to each requesting thread.
    Type: Application
    Filed: October 18, 2022
    Publication date: April 25, 2024
    Inventors: Vladimir Shveidel, Bar David
  • Publication number: 20240134712
    Abstract: In at least embodiment, processing can include: receiving virtual utilizations (VUs) for resources consumed in connection with recording entries in a log for commands or operations, wherein each resource has a corresponding VU which denotes a number of allocated units of the resource associated with entries of the log which have not been flushed from the log; determining a first resource having a maximum VU with respect to VUs of consumed resources; determining whether the maximum VU is within an acceptable VU range, wherein the acceptable VU range has bounds determined in accordance with a maximum deviation threshold associated with the first resource; and responsive to determining the maximum VU is not within the acceptable VU range of the first resource, performing one of a plurality of regulation actions that varies an amount of a system resource to accordingly vary a flush rate of entries from the log.
    Type: Application
    Filed: October 12, 2022
    Publication date: April 25, 2024
    Applicant: Dell Products L.P.
    Inventors: Vladimir Shveidel, Geng Han, Jibing Dong
  • Publication number: 20240134524
    Abstract: A method, computer program product, and computing system for assigning flush ownership for a plurality of containers of a common frozen flushing work set to a storage processor of a pair of storage processors of a storage system. For each container of the plurality of containers of the common frozen flushing work set not assigned to a particular storage processor, the storage space of the container not assigned to the particular storage processor is reclaimed. For each container of the plurality of containers of the common frozen flushing work set assigned to a particular storage processor, data stored in the container assigned to the particular storage processor is flushed to persistent memory of the storage system.
    Type: Application
    Filed: October 18, 2022
    Publication date: April 25, 2024
    Inventors: Gang Han, Vladimir Shveidel, Jibing Dong
  • Publication number: 20240126442
    Abstract: A method of dynamically adjusting workload of a data storage system includes, while processing a first workload, calculating a saturation value of a saturation metric that scales substantially linearly with an I/O per second (IOPS) rate relative to a maximum IOPS rate of the system, determining that the saturation value is one of (1) above a high threshold and (2) below a low threshold, and performing a workload adjustment operation that establishes a second workload by (1) subtracting from the first workload based on the saturation value being above the high threshold, and (2) adding to the first workload based on the saturation value being below the low threshold, then subsequently processing the second workload.
    Type: Application
    Filed: October 17, 2022
    Publication date: April 18, 2024
    Inventors: Aleksey Kabishcher, Vladimir Shveidel, Gajanan S. Natu
  • Patent number: 11954352
    Abstract: A request to perform a first operation in a system that stores deduplicated data can be received. The system can include a data block stored at multiple logical address each referencing the data block. A reference count can be associated with the data block and can denote a number of logical addresses referencing the data block. Processing can be performed to service the request and perform the first operation, wherein the processing can include: acquiring a non-exclusive lock for a page that includes the reference count of the data block; storing, in a metadata log while holding the non-exclusive lock on the page, an entry to decrement the reference count of the data block; and releasing the non-exclusive lock on the page.
    Type: Grant
    Filed: June 29, 2022
    Date of Patent: April 9, 2024
    Assignee: Dell Products L.P.
    Inventors: Vladimir Shveidel, Uri Shabi
  • Publication number: 20240104468
    Abstract: Regulating maintenance background (BG) task activity using instrumented waiting points (WPs) can include: collecting feedback metrics for the WPs, where each WP is instrumented to collect a set of feedback metrics including an average waiting time and a first value denoting a portion of resource requests received at the WP which are from maintenance BG tasks; determining, in accordance with criteria and collected feedback metrics, whether the criteria is true for at least a first WP associated with a set of feedback metrics, wherein the criteria includes determining whether the first WP has an associated average waiting time of the set which exceeds a waiting time threshold, and whether the first WP has a share of maintenance BG requests exceeding a minimum; and responsive to determining that the criteria is true for at least the first WP, performing processing to reduce a current activity level of said maintenance BG tasks.
    Type: Application
    Filed: September 23, 2022
    Publication date: March 28, 2024
    Applicant: Dell Products L.P.
    Inventors: Vladimir Shveidel, Lior Kamran
  • Patent number: 11921695
    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: Grant
    Filed: October 5, 2021
    Date of Patent: March 5, 2024
    Assignee: Dell Products L.P.
    Inventors: Bar David, Dror Zalstein, Vladimir Shveidel
  • Publication number: 20240061777
    Abstract: Techniques for analyzing cache efficiencies in storage systems based on in-depth metrics instrumentation. The techniques include collecting metrics instrumentation data for each page of a specific type stored in a cache memory component of a storage system. The metrics instrumentation data for each page of a specific type includes a timestamp indicating when the page was stored in the cache, a timestamp indicating when the last cache hit occurred for the page, a current number of cache hits for the page, and an indication of the specific type of page. The techniques further include, based on the metrics instrumentation data, obtaining a plurality of metrics for each specific type of page stored in the cache. The techniques further include, based on the plurality of metrics and/or the metrics instrumentation data, performing a remedial action to improve performance of the cache memory component or provide more optimal use of memory resources.
    Type: Application
    Filed: August 17, 2022
    Publication date: February 22, 2024
    Inventors: Vladimir Shveidel, Lior Kamran, Leron Fliess
  • Patent number: 11907131
    Abstract: Techniques for efficiently flushing a user data log may postpone or delay establishing chains of metadata pages used as mapping information to map logical addresses to storage locations of content stored at the logical addresses. Processing can include: receiving a write operation that writes data to a logical address; storing an entry for the write operation in the user data log; and flushing the entry from the user data log. Flushing can include storing a metadata log entry in a metadata log, wherein the metadata log entry represents a binding of the logical address to a data block including the data stored at the logical address; and destaging the metadata log entry. Destaging can include updating mapping information used to map the logical address to the data block. The mapping information can include a metadata page in accordance with the metadata log entry.
    Type: Grant
    Filed: July 1, 2022
    Date of Patent: February 20, 2024
    Assignee: Dell Products L.P.
    Inventors: Vladimir Shveidel, Bar David
  • Publication number: 20240053907
    Abstract: Nodes in a storage system can autonomously ingest I/O requests and flush data to storage. First and second nodes determine a sequence separator, the sequence separator corresponding to an entry in a page descriptor ring that separates two flushing work sets (FWS). The first node receives an input/output (I/O) request and allocates a sequence identification (ID) number to the I/O request. The first node determines a FWS for the I/O request based on the sequence separator and the sequence ID number, and commits the I/O request using the sequence ID number. The I/O request and the sequence ID number are sent to the second node.
    Type: Application
    Filed: October 27, 2023
    Publication date: February 15, 2024
    Applicant: Dell Products L.P.
    Inventors: Vladimir Shveidel, Geng Han, Yousheng Liu
  • Patent number: 11899630
    Abstract: A method, computer program product, and computer system for controlling, by a computing device, access to a non-volatile memory using a non-volatile lock as a reader of the non-volatile memory. Metadata (MD) non-volatile memory commits may be throttled until capacity of the non-volatile memory is at a threshold capacity.
    Type: Grant
    Filed: April 23, 2021
    Date of Patent: February 13, 2024
    Assignee: EMC IP Holding Company, LLC
    Inventors: Ami Sabo, Vladimir Shveidel, Dror Zalstein
  • Patent number: 11893252
    Abstract: Processing can be performed to persistently record, in a log, a write I/O that writes first data to a target logical address. The processing can include: allocating storage for a first page buffer (PB) located at offsets in a PB pool of non-volatile storage of the log; enqueuing a request to an aggregation queue to persistently store the first data to the first PB of the log, wherein the request identifies the offsets of the PB pool of non-volatile storage which correspond to the first PB; and integrating the request into the aggregation queue. Integrating can include: determining whether a contiguous segment of the offsets of the request is adjacent to a second contiguous segment of the aggregation queue; and responsive to determining the contiguous segment is adjacent to the second contiguous segment, merging the first and second contiguous segments and generating an aggregated continuous segment.
    Type: Grant
    Filed: July 15, 2022
    Date of Patent: February 6, 2024
    Assignee: Dell Products L.P.
    Inventors: Svetlana Kronrod, Vladimir Shveidel, David Bernard, Vamsi K. Vankamamidi
  • Patent number: 11886427
    Abstract: In at least one embodiment, processing can include: receiving a request for a transaction of MD (metadata) updates including a first MD update of a first MD update type of a first set and including a second MD update of a second MD update type of a second set; storing, in a first volatile MD log, the first MD update; storing, in a second volatile MD log, the second MD update; storing, in a first non-volatile MD log, the first MD update; and storing, in a second non-volatile MD log, the second MD update, wherein each MD update of the first volatile MD log and the first non-volatile MD log has a corresponding MD update type of the first set, and each MD update of the second volatile MD log and the second non-volatile MD log has a corresponding MD update type of the second set.
    Type: Grant
    Filed: October 3, 2022
    Date of Patent: January 30, 2024
    Assignee: Dell Products L.P.
    Inventors: Vladimir Shveidel, Dror Zalstein, Bar David
  • Patent number: 11886911
    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 associate different classes of service with respective threads of one or more applications executing on at least one of a plurality of processing cores of a storage system, to configure different sets of prioritized thread queues for respective ones of the different classes of service, to enqueue particular ones of the threads associated with particular ones of the classes of service in corresponding ones of the prioritized thread queues, and to implement different dequeuing policies for selecting particular ones of the enqueued threads from the different sets of prioritized thread queues based at least in part on the different classes of service. The at least one processing device illustratively comprises at least a subset of the plurality of processing cores of the storage system.
    Type: Grant
    Filed: June 29, 2020
    Date of Patent: January 30, 2024
    Assignee: EMC IP Holding Company LLC
    Inventors: Vladimir Shveidel, Lior Kamran
  • Publication number: 20240028251
    Abstract: A technique is directed to processing metadata changes. The technique involves designating a first tablet to ingest metadata changes and a second tablet to destage previously ingested metadata changes, the first tablet being partitioned into a first reserved space and a first regular space that form a first memory pool, and the second tablet being partitioned into a second reserved space and a second regular space that form a second memory pool. The technique further involves, while the first tablet is designated to ingest metadata changes and the second tablet is designated to destage previously ingested metadata changes, ingesting metadata changes into the first tablet and destaging the previously ingested metadata changes from the second tablet. The technique further involves, when the first tablet becomes full, performing a switch operation that designates the second tablet to ingest metadata changes and the first tablet to destage previously ingested metadata changes.
    Type: Application
    Filed: July 25, 2022
    Publication date: January 25, 2024
    Inventors: Bar David, Vladimir Shveidel
  • Publication number: 20240028520
    Abstract: A method, computer program product, and computing system for generating a page buffer pool within a data journal of a storage node. A plurality of TO operations may be processed on a storage array using the storage node. A plurality of pages may be persisted in a plurality of page buffers within the page buffer pool based upon, at least in part, the processing of the plurality of TO operations. For each page buffer in the page buffer pool, a hash of the page buffer may be generated, thus defining a page buffer hash. The page buffer hash may be stored in a page descriptor associated with the page buffer.
    Type: Application
    Filed: July 21, 2022
    Publication date: January 25, 2024
    Inventors: Oran Baruch, Vladimir Shveidel, Alexander Shknevsky
  • Publication number: 20240020225
    Abstract: Techniques for address translation can include: performing first processing that maintains a first storage tier including first metadata pages of a hierarchical structure, and performing second processing that maintains a second storage tier including second metadata pages of the hierarchical structure. The first processing can include storing updated versions of the first metadata pages in place at static physical addresses of the first storage tier. The second processing can include storing updated versions of the second metadata pages at new physical storage locations. Prior to updating the second metadata pages, prior versions of the second metadata pages can be stored at other physical storage locations of the second storage tier, where the other physical storage location are different from the new physical storage locations. The first storage tier can be a non-parity RAID configuration such as RAID-1. The second storage tier can be a parity configuration such as RAID-5.
    Type: Application
    Filed: July 18, 2022
    Publication date: January 18, 2024
    Applicant: Dell Products L.P.
    Inventors: Vladimir Shveidel, Amitai Alkalay
  • Publication number: 20240020031
    Abstract: Processing can be performed to persistently record, in a log, a write I/O that writes first data to a target logical address. The processing can include: allocating storage for a first page buffer (PB) located at offsets in a PB pool of non-volatile storage of the log; enqueuing a request to an aggregation queue to persistently store the first data to the first PB of the log, wherein the request identifies the offsets of the PB pool of non-volatile storage which correspond to the first PB; and integrating the request into the aggregation queue. Integrating can include: determining whether a contiguous segment of the offsets of the request is adjacent to a second contiguous segment of the aggregation queue; and responsive to determining the contiguous segment is adjacent to the second contiguous segment, merging the first and second contiguous segments and generating an aggregated continuous segment.
    Type: Application
    Filed: July 15, 2022
    Publication date: January 18, 2024
    Applicant: Dell Products L.P.
    Inventors: Svetlana Kronrod, Vladimir Shveidel, David Bernard, Vamsi K. Vankamamidi
  • Patent number: 11875198
    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 establish one or more groups of synchronization objects in a storage system based at least in part on object type, and for each of the one or more groups, to insert entries into a corresponding object type queue for respective objects of the group, to execute a monitor thread for the group, the monitor thread being configured to scan the entries of the corresponding object type queue, and responsive to at least one of the scanned entries meeting one or more designated conditions, to take at least one automated action for its associated object. The synchronization objects illustratively comprise respective locks, or other objects. The at least one processing device illustratively comprises at least a subset of a plurality of processing cores of the storage system.
    Type: Grant
    Filed: March 22, 2021
    Date of Patent: January 16, 2024
    Assignee: EMC IP Holding Company LLC
    Inventors: Vladimir Shveidel, Lior Kamran