-
公开(公告)号:US20250086140A1
公开(公告)日:2025-03-13
申请号:US18465912
申请日:2023-09-12
Applicant: VMWare LLC
Inventor: Eric Knauft , Sriram Patil , Wenguang Wang , Abhay Kumar Jain , Maxime Austruy
IPC: G06F16/11
Abstract: Workload-responsive distributed segment cleaning of log structured filesystems (LFSs) is disclosed. When multiple independent LFSs overlap on spanning a set of storage disks (including non-volatile memory express storage), a global segment cleaner (GSC) for each disk coordinates the cleaning rates of the local segment cleaners (LSCs) for each LFS having a presence on that disk. LFSs send usage information to relevant GSCs that select usage thresholds to trigger cleaning and cleaning rates. When capacity fullness (e.g., segments having at least one used block) meets a threshold, segment cleaning is performed at a rate based on capacity fullness and an equilibrium cleaning rate. Cleaning rates speed up when storage is more full, to provide capacity for burst writing events, but slow down when less full, to reduce overhead burden. LFSs clean at the highest rate identified for every GSC's usage threshold an LFS meets.
-
公开(公告)号:US12189574B2
公开(公告)日:2025-01-07
申请号:US17504845
申请日:2021-10-19
Applicant: VMware LLC
Inventor: Enning Xiang , Wenguang Wang , Abhay Kumar Jain , Sriram Patil , Asit Desai , Eric Knauft
IPC: G06F16/11 , G06F12/02 , G06F16/182 , G06F16/22
Abstract: Example methods and systems for accessing data in a log-structured file system having a plurality of snapshots of storage objects backed by a first-level copy-on-write (COW) B+ tree data structure and a plurality of second-level B+ tree data structures have been disclosed. One example method includes obtaining a first first-level mapping associated with a first snapshot from the plurality of snapshots based on a first logical block address, wherein each of the plurality of snapshots corresponds to each of the plurality of second-level B+ tree data structures, identifying a first second-level B+ tree data structure corresponding to one of the plurality of snapshots based on the first first-level mapping, obtaining a first second-level mapping based on the first logical block address in the first second-level B+ tree data structure, obtaining a first physical block address based on the first second-level mapping, and accessing data at the first physical block address.
-
公开(公告)号:US20250086143A1
公开(公告)日:2025-03-13
申请号:US18465896
申请日:2023-09-12
Applicant: VMWare LLC
Inventor: Eric Knauft , Sriram Patil , Wenguang Wang , Abhay Kumar Jain , Maxime Austruy
Abstract: Workload-responsive segment cleaning of log structured filesystems (LFSs) is disclosed. When multiple independent LFSs overlap on spanning a set of storage disks (including non-volatile memory express storage), a global segment cleaner (GSC) for each disk coordinates the cleaning rates of the local segment cleaners (LSCs) for each LFS having a presence on that disk. LFSs send usage information to relevant GSCs that select usage thresholds to trigger cleaning and cleaning rates. When capacity fullness (e.g., segments having at least one used block) meets a threshold, segment cleaning is performed at a rate based on capacity fullness and an equilibrium cleaning rate. Cleaning rates speed up when storage is more full, to provide capacity for burst writing events, but slow down when less full, to reduce overhead burden. LFSs clean at the highest rate identified for every GSC's usage threshold an LFS meets.
-
公开(公告)号:US12164505B2
公开(公告)日:2024-12-10
申请号:US17957941
申请日:2022-09-30
Applicant: VMware LLC
Inventor: Yiqi Xu , Eric Knauft , Enning Xiang
Abstract: System and method for managing different classes of storage input/output (I/O) requests for a two-phase commit operation in a distributed storage system assigns reserved log sequence values to each of storage I/O requests of a first class, which are added to a two-phase commit queue. The reserved log sequence values of the storage I/O requests of the first class in the two-phase commit queue are assigned to some of the storage I/O requests of the second class, which are added to the two-phase commit queue.
-
5.
公开(公告)号:US12141440B2
公开(公告)日:2024-11-12
申请号:US18048184
申请日:2022-10-20
Applicant: VMware LLC
Inventor: Yiqi Xu , Enning Xiang , Eric Knauft , Pascal Renauld
Abstract: The disclosure herein describes performing resynchronization (“resync”) jobs in a distributed storage system based on a parallelism policy. A resync job is obtained from a queue and input/output (I/O) resources that will be used during execution of the resync job are identified. Available bandwidth slots of each I/O resource of the identified I/O resources are determined. The parallelism policy is applied to the identified I/O resources and the available bandwidth slots. Based on the application of the parallelism policy, a bottleneck resource of the I/O resources is determined and a parallel I/O value is calculated based on the available bandwidth slots of the bottleneck resource, wherein the parallel I/O value indicates a quantity of I/O tasks that can be performed in parallel. The resync job is executed using the I/O resources, the execution of the resync job including performance of I/O tasks in parallel based on the parallel I/O value.
-
公开(公告)号:US12141063B2
公开(公告)日:2024-11-12
申请号:US17929197
申请日:2022-09-01
Applicant: VMware LLC
Inventor: Jiaqi Zuo , Junlong Gao , Wenguang Wang , Eric Knauft , Hardik Singh Negi
IPC: G06F12/0804 , G06F12/0882
Abstract: A method for efficient write-back for journal truncation is provided. A method includes maintaining a journal in a memory of a computing system including a plurality of records. Each record indicates a transaction associated with one or more pages in an ordered data structure and maintaining a dirty list including an entry for each page indicated by a record in the journal. Each entry in the dirty list includes a respective first log sequence number (LSN) associated with a least recent record of the plurality of records that indicates the page and a respective second LSN associated with a most recent record of the plurality of records that indicates the page. The method includes determining to truncate the journal. The method includes identifying one or more records, of the plurality of records, from the journal to write back to a disk, where the identifying is based on the dirty list.
-
公开(公告)号:US12131021B2
公开(公告)日:2024-10-29
申请号:US17929204
申请日:2022-09-01
Applicant: VMware LLC
Inventor: Wenguang Wang , Jiaqi Zuo , Hardik Singh Negi , Eric Knauft , Junlong Gao
CPC classification number: G06F3/0604 , G06F3/0655 , G06F3/0673 , G06F16/2246 , G06F11/1446
Abstract: A method for efficient journal truncation is provided. A method for journal truncation includes maintaining a journal in a memory of a computing system including a plurality of records. Each record indicates a transaction in an ordered data structure. The method includes maintaining a truncation queue in the memory including one or more entries. Each entry in the truncation queue includes a physical on-disk offset associated with a different record of the plurality of records. The method includes determining to truncate the journal and truncating records, of the plurality of records, from the journal starting from a beginning record in the journal up to the record with the physical on-disk offset associated a least recent entry of the one or more entries in the truncation queue, where the truncating includes removing the records from the memory.
-
公开(公告)号:US12056054B2
公开(公告)日:2024-08-06
申请号:US17900642
申请日:2022-08-31
Applicant: VMware LLC
Inventor: Wenguang Wang , Yanxing Pan , Junlong Gao , Mounesh Badiger , Eric Knauft , Vamsidhar Gunturu
IPC: G06F12/08 , G06F12/0864
CPC classification number: G06F12/0864 , G06F2212/1016 , G06F2212/604
Abstract: The disclosure describes growing a data cache using a background hash bucket growth process. A first memory portion is allocated to the data buffer of the data cache and a second memory portion is allocated to the metadata buffer of the data cache based on the cache growth instruction. The quantity of hash buckets in the hash bucket buffer is increased and the background hash bucket growth process is initiated, wherein the process is configured to rehash hash bucket entries of the hash bucket buffer in the increased quantity of hash buckets. A data entry is stored in the data buffer using the allocated first memory portion of the data cache and metadata associated with the data entry is stored using the allocated second memory portion of the metadata buffer, wherein a hash bucket entry associated with the data entry is stored in the increased quantity of hash buckets.
-
-
-
-
-
-
-