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: 11977531Abstract: 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: GrantFiled: January 25, 2023Date of Patent: May 7, 2024Assignee: Dell Products L.P.Inventors: Vladimir Shveidel, Amitai Alkalay
-
Publication number: 20240134839Abstract: 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: ApplicationFiled: October 18, 2022Publication date: April 25, 2024Inventors: Vladimir Shveidel, Bar David
-
Publication number: 20240134712Abstract: 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: ApplicationFiled: October 12, 2022Publication date: April 25, 2024Applicant: Dell Products L.P.Inventors: Vladimir Shveidel, Geng Han, Jibing Dong
-
Publication number: 20240134524Abstract: 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: ApplicationFiled: October 18, 2022Publication date: April 25, 2024Inventors: Gang Han, Vladimir Shveidel, Jibing Dong
-
Publication number: 20240126442Abstract: 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: ApplicationFiled: October 17, 2022Publication date: April 18, 2024Inventors: Aleksey Kabishcher, Vladimir Shveidel, Gajanan S. Natu
-
Patent number: 11954352Abstract: 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: GrantFiled: June 29, 2022Date of Patent: April 9, 2024Assignee: Dell Products L.P.Inventors: Vladimir Shveidel, Uri Shabi
-
Publication number: 20240104468Abstract: 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: ApplicationFiled: September 23, 2022Publication date: March 28, 2024Applicant: Dell Products L.P.Inventors: Vladimir Shveidel, Lior Kamran
-
Patent number: 11921695Abstract: 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: GrantFiled: October 5, 2021Date of Patent: March 5, 2024Assignee: Dell Products L.P.Inventors: Bar David, Dror Zalstein, Vladimir Shveidel
-
Publication number: 20240061777Abstract: 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: ApplicationFiled: August 17, 2022Publication date: February 22, 2024Inventors: Vladimir Shveidel, Lior Kamran, Leron Fliess
-
Patent number: 11907131Abstract: 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: GrantFiled: July 1, 2022Date of Patent: February 20, 2024Assignee: Dell Products L.P.Inventors: Vladimir Shveidel, Bar David
-
Publication number: 20240053907Abstract: 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: ApplicationFiled: October 27, 2023Publication date: February 15, 2024Applicant: Dell Products L.P.Inventors: Vladimir Shveidel, Geng Han, Yousheng Liu
-
Patent number: 11899630Abstract: 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: GrantFiled: April 23, 2021Date of Patent: February 13, 2024Assignee: EMC IP Holding Company, LLCInventors: Ami Sabo, Vladimir Shveidel, Dror Zalstein
-
Patent number: 11893252Abstract: 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: GrantFiled: July 15, 2022Date of Patent: February 6, 2024Assignee: Dell Products L.P.Inventors: Svetlana Kronrod, Vladimir Shveidel, David Bernard, Vamsi K. Vankamamidi
-
Patent number: 11886427Abstract: 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: GrantFiled: October 3, 2022Date of Patent: January 30, 2024Assignee: Dell Products L.P.Inventors: Vladimir Shveidel, Dror Zalstein, Bar David
-
Patent number: 11886911Abstract: 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: GrantFiled: June 29, 2020Date of Patent: January 30, 2024Assignee: EMC IP Holding Company LLCInventors: Vladimir Shveidel, Lior Kamran
-
Publication number: 20240028251Abstract: 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: ApplicationFiled: July 25, 2022Publication date: January 25, 2024Inventors: Bar David, Vladimir Shveidel
-
Publication number: 20240028520Abstract: 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: ApplicationFiled: July 21, 2022Publication date: January 25, 2024Inventors: Oran Baruch, Vladimir Shveidel, Alexander Shknevsky
-
Publication number: 20240020225Abstract: 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: ApplicationFiled: July 18, 2022Publication date: January 18, 2024Applicant: Dell Products L.P.Inventors: Vladimir Shveidel, Amitai Alkalay
-
Publication number: 20240020031Abstract: 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: ApplicationFiled: July 15, 2022Publication date: January 18, 2024Applicant: Dell Products L.P.Inventors: Svetlana Kronrod, Vladimir Shveidel, David Bernard, Vamsi K. Vankamamidi
-
Patent number: 11875198Abstract: 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: GrantFiled: March 22, 2021Date of Patent: January 16, 2024Assignee: EMC IP Holding Company LLCInventors: Vladimir Shveidel, Lior Kamran