-
公开(公告)号:US20160321294A1
公开(公告)日:2016-11-03
申请号:US14700615
申请日:2015-04-30
Applicant: VMware, Inc.
Inventor: Wenguang Wang , Radu Berinde
CPC classification number: G06F16/182 , H04L67/1097 , H04L67/2842
Abstract: Techniques for implementing a distributed, scalable key-value store (DSKVS) across a plurality of nodes are provided. In one embodiment, each node in the plurality of nodes can store: (1) a hash table in a nonvolatile storage of the node, where the hash table is configured to hold a partition of a total set of key-value data maintained by the DSKVS; (2) a logical log in the nonvolatile storage, where the logical log is configured to hold transaction log records corresponding to key-value update operations performed on the node; and (3) a cache in a volatile memory of the node, where the cache is configured to hold key-value data that has been recently updated on the node via one or more of the key-value update operations.
Abstract translation: 提供了跨多个节点实现分布式可扩展键值存储(DSKVS)的技术。 在一个实施例中,多个节点中的每个节点可以存储:(1)在节点的非易失性存储器中的散列表,其中散列表被配置为保存由所述节点保持的总组密钥值数据的分区 DSKVS; (2)非易失性存储器中的逻辑日志,其中逻辑日志被配置为保存与在该节点上执行的键值更新操作相对应的事务日志记录; 以及(3)在所述节点的易失性存储器中的高速缓存,其中所述高速缓存被配置为保持经由所述键值更新操作中的一个或多个在所述节点上最近更新的键值数据。
-
公开(公告)号:US11847028B2
公开(公告)日:2023-12-19
申请号:US16920490
申请日:2020-07-03
Applicant: VMware, Inc.
Inventor: Abhay Kumar Jain , Wenguang Wang
CPC classification number: G06F11/1451 , G06F11/1461 , G06F11/1464 , G06F11/1469 , G06F16/128 , G06F16/162 , G06F16/1748 , G06F16/1873 , G06F2201/80
Abstract: Techniques for efficiently exporting snapshot changes are provided. In some embodiments, a system may receive a first snapshot of a data set in a storage system and a second snapshot the data set in the storage system. The system may further generate actions based on differences between the first snapshot and the second snapshot to produce a list of actions, wherein a modification to a file or directory path having a first directory location includes a first action to rename a file from the first directory location to a temporary storage location and a second action to rename the file from the temporary storage location to a second directory location; and provide the generated actions to a backup system. The backup system may apply the generated actions to a first backup associated with the first snapshot to produce a second backup associated with the second snapshot.
-
公开(公告)号:US11748300B2
公开(公告)日:2023-09-05
申请号:US17455519
申请日:2021-11-18
Applicant: VMware, Inc.
Inventor: Enning Xiang , Wenguang Wang , Pranay Singh
CPC classification number: G06F16/128 , G06F16/125 , G06F16/14
Abstract: A method for the reverse deletion of a plurality of snapshots in a chain of snapshots is provided. The method includes in reverse order, starting from a latest snapshot in time to an earliest snapshot in time of the plurality of snapshots: identifying at least one of a first set of one or more data blocks of a snapshot that are shared with an earlier snapshot in time in the chain of snapshots or a second set of one or more data blocks of the snapshot that are owned by the snapshot and processing the second set of one or more data blocks and skipping processing the first set of one or more data blocks, wherein processing the second set of one or more data blocks comprises performing one or more actions to maintain and/or delete data blocks of the second set of one or more data blocks.
-
公开(公告)号:US11741005B2
公开(公告)日:2023-08-29
申请号:US17951018
申请日:2022-09-22
Applicant: VMware, Inc.
Inventor: Wenguang Wang , Vamsi Gunturu , Junlong Gao
CPC classification number: G06F12/0253 , G06F11/1048 , G06F11/2056 , G06F16/27
Abstract: Techniques for using data mirroring across regions to reduce the likelihood of losing objects in a cloud object storage platform are provided. In one set of embodiments, a computer system can upload first and second copies of a data object to first and second regions of the cloud object storage platform respectively, where the first and second copies are identical. The computer system can then attempt to read the first copy of the data object from the first region. If the read attempt fails, the computer system can retrieve the second copy of the data object from the second region.
-
公开(公告)号:US11675745B2
公开(公告)日:2023-06-13
申请号:US17097473
申请日:2020-11-13
Applicant: VMware, Inc.
Inventor: Wenguang Wang , Junlong Gao , Vamsi Gunturu
IPC: G06F16/18 , G06F16/188 , G06F16/182 , G06F16/901 , G06F9/455 , G06F11/14 , G06F16/16
CPC classification number: G06F16/1805 , G06F9/45558 , G06F11/1484 , G06F16/164 , G06F16/188 , G06F16/1824 , G06F16/9027 , G06F2009/45591
Abstract: A method for managing data associated with objects stored in a cloud storage is provided. The method receives, at a first compute node, first data associated with an object stored in the cloud storage, the first compute node being one of a plurality of compute nodes that store data associated with different objects as storage objects in a log-structured merging (LSM) tree data structure. The method then assigns a first unique name to a first storage object associated with the first data, the first unique name comprising a combination of at least an identifier identifying the first compute node and a first incremental local value. The method stores the first storage object in a first level (L0) of the LSM tree data structure.
-
公开(公告)号:US11663186B2
公开(公告)日:2023-05-30
申请号:US17177686
申请日:2021-02-17
Applicant: VMware, Inc.
Inventor: Hardik Singh Negi , Wenguang Wang , Eric Knauft
IPC: G06F16/22 , G06F16/28 , G06F16/2455 , G06F16/23
CPC classification number: G06F16/2246 , G06F16/2343 , G06F16/24552 , G06F16/288
Abstract: A method for modifying key-value pairs of a B+ tree is provided. The method receives a request to modify a particular key-value pair. Each node of the tree has a modification number. The method traverses a path on the tree from the root node toward the particular node. The traversing includes upon reaching a parent node of the path, acquiring a shared lock on both the parent node and a child node one level below the parent node. Upon determining that the child node is the particular node, the method stores the modification number of the particular node, releases the shared lock on the particular node, compares a current modification number of the node with its stored number, and acquires an exclusive lock on the node if the numbers are the same. The method increments the current modification number of the node and modifies it while in the exclusive lock.
-
177.
公开(公告)号:US11573711B2
公开(公告)日:2023-02-07
申请号:US16827692
申请日:2020-03-23
Applicant: VMware, Inc.
Inventor: Wenguang Wang , Eric Knauft , Vamsi Gunturu , Pascal Renauld
Abstract: A method for encrypting data in one or more data blocks is provided. The method receives a first data block to be written to a physical storage that includes one or more physical disks. The method applies a first random tweak to data indicative of the first data block to generate a first encrypted data block, and writes the first encrypted data block and the first random tweak to a first physical block of the physical storage. The method receives a second data block to be written to the physical storage. The method then applies a second random tweak, different than the first random tweak, to data indicative of the second data block to generate a second encrypted data block, and writes the second encrypted data block and the second random tweak to a second physical block of the physical storage.
-
178.
公开(公告)号:US11556423B2
公开(公告)日:2023-01-17
申请号:US16882246
申请日:2020-05-22
Applicant: VMware, Inc.
Inventor: Wenguang Wang , Vamsi Gunturu , Junlong Gao
Abstract: Techniques for using erasure coding in a single region to reduce the likelihood of losing objects in a cloud object storage platform are provided. In one set of embodiments, a computer system can upload a plurality of data objects to a region of a cloud object storage platform, where the plurality of data objects including modifications to a data set. The computer system can further compute a parity object based on the plurality of data objects, where the parity object encodes parity information for the plurality of data objects. The computer system can then upload the parity object to the same region where the plurality of data objects was uploaded.
-
公开(公告)号:US11537297B1
公开(公告)日:2022-12-27
申请号:US17479594
申请日:2021-09-20
Applicant: VMware, Inc.
Inventor: Enning Xiang , Wenguang Wang , Pranay Singh , Subhradyuti Sarkar
IPC: G06F3/06
Abstract: The present disclosure is related to methods, systems, and machine-readable media for deleting snapshot pages using sequence numbers and page lookups. A monotonically-increasing sequence number (SN) can be assigned to each created page of a first snapshot of a storage volume. A first snapshot sequence number (snapSN) can be assigned to the first snapshot responsive to a creation of a second snapshot, wherein the first snapSN is equal to a largest SN of the first snapshot. An SN can be assigned to each created page of the second snapshot, wherein a first page of the second snapshot is assigned an SN monotonically increased from the first snapSN. A second snapSN can be assigned to the second snapshot responsive to a creation of a third snapshot, wherein the second snapSN is equal to a largest SN of the second snapshot. An SN can be assigned to each created page of the third snapshot, wherein a first page of the third snapshot is assigned an SN monotonically increased from the second snapSN. A deletion process can be performed in response to receiving a request to delete the second snapshot that includes deleting a particular page of the second snapshot responsive to determining that the particular page is not shared between the second snapshot and the first snapshot or between the second snapshot and the third snapshot.
-
公开(公告)号:US20220398115A1
公开(公告)日:2022-12-15
申请号:US17346607
申请日:2021-06-14
Applicant: VMware, Inc.
Inventor: Enning Xiang , Wenguang Wang
Abstract: Linked clone read performance when retrieving data from a clone is improved at least by aggregating block mapping metadata efficiently. Primary metadata for a child clone maps a logical block address (LBA) for data in a data region of the child clone to a physical sector address (PSA) for data in the data region of the child clone. At least a portion of primary metadata for a parent clone of the child clone is copied into archival metadata for the child clone. In response to a read request, data is returned from the child clone, parent clone, or another ancestor of the child clone based on whether or not a read request LBA is within the primary metadata for the child clone, or within the archival metadata.
-
-
-
-
-
-
-
-
-