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: 11645174Abstract: 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: GrantFiled: October 28, 2019Date of Patent: May 9, 2023Assignee: Dell Products L.P.Inventors: Lior Kamran, Vladimir Shveidel
-
Publication number: 20230134128Abstract: 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: ApplicationFiled: October 28, 2021Publication date: May 4, 2023Applicant: Dell Products L.P.Inventors: Geng Han, Vladimir Shveidel, Yousheng Liu
-
Publication number: 20230137146Abstract: 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: ApplicationFiled: October 29, 2021Publication date: May 4, 2023Applicant: Dell Products L.P.Inventors: Yousheng Liu, Vladimir Shveidel, Geng Han
-
Publication number: 20230130096Abstract: 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: ApplicationFiled: October 26, 2021Publication date: April 27, 2023Applicant: Dell Products L.P.Inventors: Michael Litvak, Vladimir Shveidel, Bar David, Uri Shabi
-
Publication number: 20230118155Abstract: 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: ApplicationFiled: October 15, 2021Publication date: April 20, 2023Applicant: Dell Products L.P.Inventors: Vladimir Shveidel, Ronen Gazit, Bar David
-
Publication number: 20230106982Abstract: 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: ApplicationFiled: October 5, 2021Publication date: April 6, 2023Applicant: Dell Products L.P.Inventors: Bar David, Dror Zalstein, Vladimir Shveidel
-
Patent number: 11620062Abstract: 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: GrantFiled: October 15, 2021Date of Patent: April 4, 2023Assignee: Dell Products L.P.Inventors: Vladimir Shveidel, Ronen Gazit, Bar David
-
Patent number: 11615028Abstract: 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: GrantFiled: April 22, 2021Date of Patent: March 28, 2023Assignee: EMC IP Holding Company, LLCInventors: Jenny Derzhavetz, Vladimir Shveidel, Dror Zalstein, Bar David
-
Patent number: 11616722Abstract: 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: GrantFiled: October 22, 2020Date of Patent: March 28, 2023Assignee: EMC IP Holding Company LLCInventors: Vladimir Shveidel, Lior Kamran
-
Patent number: 11599460Abstract: 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: GrantFiled: April 22, 2021Date of Patent: March 7, 2023Assignee: EMC IP Holding Company, LLCInventors: Jenny Derzhavetz, Vladimir Shveidel, Dror Zalstein, Bar David
-
Patent number: 11593028Abstract: 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: GrantFiled: March 11, 2021Date of Patent: February 28, 2023Assignee: EMC IP Holding Company LLCInventors: Vladimir Shveidel, Alexei Kabishcer
-
Patent number: 11593266Abstract: 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: GrantFiled: July 27, 2021Date of Patent: February 28, 2023Assignee: EMC IP Holding Company LLCInventors: Vladimir Shveidel, Geng Han, Xinlei Xu
-
Publication number: 20230030703Abstract: 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: ApplicationFiled: July 27, 2021Publication date: February 2, 2023Inventors: Vladimir Shveidel, Geng Han, Xinlei Xu
-
Publication number: 20230025962Abstract: 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: ApplicationFiled: July 23, 2021Publication date: January 26, 2023Inventors: Geng Han, Vladimir Shveidel, Jibing Dong
-
Publication number: 20230026819Abstract: 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: ApplicationFiled: July 20, 2021Publication date: January 26, 2023Applicant: EMC IP Holding Company LLCInventors: Philip Love, Vladimir Shveidel, Bar David
-
Patent number: 11561700Abstract: 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: GrantFiled: January 21, 2021Date of Patent: January 24, 2023Assignee: EMC IP Holding Company LLCInventors: Shaul Dar, Gajanan S. Natu, Vladimir Shveidel
-
Publication number: 20230004448Abstract: 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: ApplicationFiled: July 1, 2021Publication date: January 5, 2023Applicant: EMC IP Holding Company LLCInventors: Vladimir Shveidel, Amitai Alkalay, Bar David
-
Publication number: 20220414086Abstract: 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: ApplicationFiled: June 23, 2021Publication date: December 29, 2022Inventors: Vladimir Shveidel, Ami Sabo
-
Publication number: 20220414062Abstract: 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: ApplicationFiled: June 28, 2021Publication date: December 29, 2022Inventors: Lior Kamran, Vladimir Shveidel, Amitai Alkalay
-
Publication number: 20220398034Abstract: 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: ApplicationFiled: June 11, 2021Publication date: December 15, 2022Inventors: Amitai Alkalay, Vladimir Shveidel, Lior Kamran