Patents by Inventor Richard P. Spillane
Richard P. Spillane 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: 11436353Abstract: Embodiments of the present disclosure relate to techniques for performing a merge update for a database. In particular, certain embodiments of a method include generating a message comprising a first key and a first transaction associated with the first key, the first transaction indicating a transaction to perform other than for key-value pairs comprising the first key. The method further includes storing the message in a database. The method further includes merging the message with a first key-value pair stored in the database, the first-key value pair comprising the first key. The method further includes performing the first transaction based on merging the message with the first key-value pair.Type: GrantFiled: September 13, 2017Date of Patent: September 6, 2022Assignee: VMWARE, INC.Inventors: Abhishek Gupta, Richard P. Spillane, Kapil Chowksey, Rob Johnson, Wenguang Wang
-
Patent number: 11403261Abstract: The disclosure provides for isolation of concurrent read and write transactions on the same file, thereby enabling higher file system throughput relative to serial-only transactions. Race conditions and lock contentions in multi-writer scenarios are avoided in file stat (metadata) updates by the use of an aggregator to merge updates of committed transactions to maintain file stat truth, and an upgrade lock that enforces atomicity of file stat access, even while still permitting multiple processes to concurrently read from and/or write to the file data. The disclosure is applicable to generic file systems, whether native or virtualized, and may be used, for example, to speed access to database files that require prolonged input/output (I/O) transaction time periods.Type: GrantFiled: December 7, 2018Date of Patent: August 2, 2022Assignee: VMware, Inc.Inventors: Wenguang Wang, Richard P. Spillane, Junlong Gao, Fengshuang Li
-
Patent number: 11372813Abstract: The present disclosure provides techniques for deduplicating files. The techniques include creating a data structure that organizes metadata about chunks of files, the organization of the metadata preserving order and locality of the chunks within files. The organization of the metadata within storage blocks of storage devices matches the order of chunks within files. Upon a read or write operation to a metadata, the preservation of locality of metadata results in the likely fetching, from storage into a memory cache, metadata of subsequent and contiguous chunks. The preserved locality results in faster subsequent read and write operations of metadata, because the read and write operations are likely to be executed from memory rather than from storage.Type: GrantFiled: August 27, 2019Date of Patent: June 28, 2022Assignee: VMware, Inc.Inventors: Wenguang Wang, Junlong Gao, Marcos K. Aguilera, Richard P. Spillane, Christos Karamanolis, Maxime Austruy
-
Publication number: 20220188267Abstract: Techniques for efficiently managing a file clone from a filesystem which supports efficient volume snapshots are provided. In some embodiments, a system may receive an instruction to remove the file clone from the filesystem. The file clone may be a point-in-time copy of metadata of an original file. The system may further—for a file map entry in a filesystem tree associated with the file clone, the file map entry indicating a data block—decrement a reference count in a reference count entry associated with the file map entry. The reference count entry may be stored in the filesystem tree according to a key and the key may comprise an identification of the original file. The system may further reclaim the data block in a storage system when the reference count is zero.Type: ApplicationFiled: December 11, 2020Publication date: June 16, 2022Inventors: Sriram Patil, Abhay Kumar Jain, Wenguang Wang, Nitin Rastogi, Pranay Singh, Richard P. Spillane
-
Patent number: 11354288Abstract: Exemplary methods, apparatuses, and systems include a file system process determining to a flush a node in a first tree. The first node includes a buffer structured as a second tree. The file system process generates an input/output instruction to load the buffer from a first memory to a second memory. The second tree is stored in two more non-contiguous locations in the first memory and the input/output operation includes a read operation corresponding to each of the two or more non-contiguous locations. The file system process causes the input/output instruction to be executed concurrently on the first memory.Type: GrantFiled: March 20, 2018Date of Patent: June 7, 2022Assignee: VMware, Inc.Inventors: Abhishek Gupta, Rob T. Johnson, Srinath Premachandran, Richard P. Spillane, Sandeep Rangaswamy, Jorge Guerra Delgado, Kapil Chowksey, Wenguang Wang
-
Patent number: 11334498Abstract: A system and method for transferring data between a user space buffer in the address space of a user space process running on a virtual machine and a storage system are described. The user space buffer is represented as a file with a file descriptor. In the method, a file system proxy receives a request for I/O read or write from the user space process without copying data to be transferred. The file system proxy then sends the request to a file system server without copying data to be transferred. The file system server then requests that the storage system perform the requested I/O directly between the storage system and the user space buffer, the only transfer of data being between the storage system and the user space buffer.Type: GrantFiled: August 27, 2019Date of Patent: May 17, 2022Assignee: VMware, Inc.Inventors: Kamal Jeet Charan, Adrian Drzewiecki, Mounesh Badiger, Pushpesh Sharma, Wenguang Wang, Maxime Austruy, Richard P Spillane
-
Patent number: 11321197Abstract: System and method for automatic remediation for a distributed file system uses a file system (FS) remediation module running in a cluster management server and FS remediation agents running in a cluster of host computers. The FS remediation module monitors the cluster of host computers for related events. When a first file system service (FSS)-impacting event is detected, a cluster-level remediation action is executed at the cluster management server by the FS remediation module in response to the detected first FSS-impacting event. When a second FSS-impacting event is detected, a host-level remediation action is executed at one or more of the host computers in the cluster by the FS remediation agents in response to the detected second FSS-impacting event.Type: GrantFiled: April 27, 2020Date of Patent: May 3, 2022Assignee: VMWARE, INC.Inventors: Yang Yang, Ye Zhang, Xiang Yu, Wenguang Wang, Richard P. Spillane, Sriram Patil
-
Patent number: 11263252Abstract: Embodiments described herein are related to cloning a volume in a file system. In some embodiments, for each index node representing a file or directory in the volume, the index node is updated to include a back pointer to each file or directory which points to the index node in the volume. In some embodiments, a copy-on-write operation is performed in order to generate a clone of the volume's root node. In certain embodiments, upon determining that a file or directory of the clone has been modified, a new index node is generated representing the file or directory by copying an index node representing a corresponding file or directory of the volume. In some embodiments, each file or directory which should point to the new index node in the clone is identified based on one or more back pointers and updated to point to the new index node.Type: GrantFiled: June 20, 2017Date of Patent: March 1, 2022Assignee: VMware, Inc.Inventors: Wenguang Wang, Richard P. Spillane
-
Publication number: 20220027264Abstract: An example method of memory management in a computing system having a plurality of processors includes: receiving a first memory allocation request at a memory manager from a process executing on a processor of the plurality of processors in the computing system; allocating a local memory pool for the processor from a global memory pool for the plurality of processors in response to the first memory allocation request; and allocating memory from the local memory pool for the processor in response to the first memory allocation request without locking the local memory pool.Type: ApplicationFiled: September 9, 2020Publication date: January 27, 2022Inventors: ABHAY KUMAR JAIN, Richard P. Spillane, Wenguang Wang, Nitin Rastogi, Mounesh Badiger
-
Patent number: 11176099Abstract: The disclosure herein describes synchronizing a data cache and an LSM tree file system on an object storage platform. Instructions to send a cached data set from the data cache to the LSM tree file system are received. An updated metadata catalog is generated. If the LSM tree structure is out of shape, compaction is performed on the LSM tree file system which may be on a different system or server. When an unmerged compacted metadata catalog is identified, a merged metadata catalog is generated, based on the compacted metadata catalog and the cached data set, and associated with the cached data set. The cached data set and the associated metadata catalog are sent to the LSM tree file system, whereby the data cache and the LSM tree file system are synchronized. Synchronization is enabled without the data cache or file system being locked and/or waiting for the other entity.Type: GrantFiled: December 21, 2018Date of Patent: November 16, 2021Assignee: VMware, Inc.Inventors: Wenguang Wang, Junlong Gao, Richard P. Spillane, Robert T. Johnson, Christos Karamanolis, Maxime Austruy
-
Patent number: 11163461Abstract: System and method for writing updated versions of a configuration data file for a distributed file system in a storage system uses a directory renaming operation to write a new updated version of the configuration data file using the latest version of the configuration data file and a target directory. After the latest version of the configuration data file is modified by a particular host computer in the storage system, the modified configuration data file is written to a temporary file. The directory naming operation is then initiated on the temporary file to change the directory for the temporary file to the target directory. If the directory renaming operation has failed, a retry is performed by the particular host computer to write the new updated version of the configuration data file using a new latest version and a new target directory.Type: GrantFiled: April 20, 2020Date of Patent: November 2, 2021Assignee: VMware, Inc.Inventors: Ye Zhang, Wenguang Wang, Sriram Patil, Richard P. Spillane, Junlong Gao, Wangping He, Zhaohui Guo, Yang Yang
-
Publication number: 20210334178Abstract: System and method for automatic remediation for a distributed file system uses a file system (FS) remediation module running in a cluster management server and FS remediation agents running in a cluster of host computers. The FS remediation module monitors the cluster of host computers for related events. When a first file system service (FSS)-impacting event is detected, a cluster-level remediation action is executed at the cluster management server by the FS remediation module in response to the detected first FSS-impacting event. When a second FSS-impacting event is detected, a host-level remediation action is executed at one or more of the host computers in the cluster by the FS remediation agents in response to the detected second FSS-impacting event.Type: ApplicationFiled: April 27, 2020Publication date: October 28, 2021Inventors: Yang YANG, Ye ZHANG, Xiang YU, Wenguang WANG, Richard P. SPILLANE, Sriram PATIL
-
Publication number: 20210326049Abstract: System and method for writing updated versions of a configuration data file for a distributed file system in a storage system uses a directory renaming operation to write a new updated version of the configuration data file using the latest version of the configuration data file and a target directory. After the latest version of the configuration data file is modified by a particular host computer in the storage system, the modified configuration data file is written to a temporary file. The directory naming operation is then initiated on the temporary file to change the directory for the temporary file to the target directory. If the directory renaming operation has failed, a retry is performed by the particular host computer to write the new updated version of the configuration data file using a new latest version and a new target directory.Type: ApplicationFiled: April 20, 2020Publication date: October 21, 2021Inventors: Ye ZHANG, Wenguang WANG, Sriram PATIL, Richard P. SPILLANE, Junlong GAO, Wangping HE, Zhaohui GUO, Yang YANG
-
Patent number: 11093471Abstract: Embodiments herein are directed towards systems and methods for performing range lookups in B?-trees. One example method involves receiving a request to return key-value pairs within a range of keys from the B?-tree. The B?-tree includes a plurality of nodes, each node being associated with a buffer that stores key-value pairs. The method further involves determining a fractional size of the range of keys. The method further involves, for each level of the B?-tree, obtaining from within one or more buffers of one or more nodes of the level, a set of key-value pairs within the range of keys up to a size equal to the fractional size and transferring the set of key-value pairs to a result data structure. The method further involves sorting and merging all key-value pairs in the result data structure and returning the result data structure in response to the request.Type: GrantFiled: June 5, 2018Date of Patent: August 17, 2021Assignee: VMware, Inc.Inventors: Abhishek Gupta, Richard P. Spillane, Robert T. Johnson, Wenguang Wang, Kapil Chowksey, Jorge Guerra Delgado, Sandeep Rangaswamy, Srinath Premachandran
-
Patent number: 11093450Abstract: A B?-tree associated with a file system on a storage volume includes a hierarchy of nodes. Each node includes a buffer portion to store key-value pairs as messages in the buffer. Each node can be characterized by having a maximum allowable size that is periodically updated at run time. The buffers in the nodes of the B?-tree are therefore characterized by having a maximum allowed size that can vary over time.Type: GrantFiled: September 27, 2017Date of Patent: August 17, 2021Assignee: VMware, Inc.Inventors: Wenguang Wang, Abhishek Gupta, Richard P Spillane, Kapil Chowksey, Robert T Johnson
-
Patent number: 11093472Abstract: The disclosure herein describes providing and accessing data on an object storage platform using a log-structured merge (LSM) tree file system. The LSM tree file system on the object storage platform includes sorted data tables, each sorted data table including a payload portion and an index portion. Data is written to the LSM tree file system in at least one new sorted data table. Data is ready by identifying a data location of the data based on index portions of the sorted data tables and reading the data from a sorted data table associated with the identified data location. The use of the LSM tree file system on the object storage platform provides an efficient means for interacting with the data stored thereon.Type: GrantFiled: December 7, 2018Date of Patent: August 17, 2021Assignee: VMware, Inc.Inventors: Richard P. Spillane, Wenguang Wang, Junlong Gao, Robert T. Johnson, Christos Karamanolis, Maxime Austruy
-
Patent number: 11086779Abstract: Disclosed are a method and system for managing multi-threaded concurrent access to a cache data structure. The cache data structure includes a hash table and three queues. The hash table includes a list of elements for each hash bucket with each hash bucket containing a mutex object and elements in each of the queues containing lock objects. Multiple threads can each lock a different hash bucket to have access to the list, and multiple threads can each lock a different element in the queues. The locks permit highly concurrent access to the cache data structure without conflict. Also, atomic operations are used to obtain pointers to elements in the queues so that a thread can safely advance each pointer. Race conditions that are encountered with locking an element in the queues or entering an element into the hash table are detected, and the operation encountering the race condition is retried.Type: GrantFiled: November 11, 2019Date of Patent: August 10, 2021Assignee: VMware, Inc.Inventors: Wenguang Wang, Mounesh Badiger, Abhay Kumar Jain, Junlong Gao, Zhaohui Guo, Richard P. Spillane
-
Patent number: 11080189Abstract: The present disclosure provides techniques for managing a cache of a computer system using a cache management data structure. The cache management data structure includes a cold queue, a ghost queue, and a hot queue. The techniques herein improve the functioning of the computer because management of the cache management data structure can be performed in parallel with multiple cores or multiple processors, because a sequential scan will only pollute (i.e., add unimportant memory pages) cold queue, and to an extent, ghost queue, but not hot queue, and also because the cache management data structure has lower memory requirements and lower CPU overhead on cache hit than some prior art algorithms.Type: GrantFiled: January 24, 2019Date of Patent: August 3, 2021Assignee: VMware, Inc.Inventors: Wenguang Wang, Christoph Klee, Adrian Drzewiecki, Christos Karamanolis, Richard P. Spillane, Maxime Austruy
-
Patent number: 11074225Abstract: The disclosure herein describes synchronizing cached index copies at a first site with indexes of a log-structured merge (LSM) tree file system on an object storage platform at a second site. An indication that the LSM tree file system has been compacted based on a compaction process is received. A cached metadata catalog of the included parent catalog version at the first site is accessed. A set of cached index copies is identified at the first site based on the metadata of the cached metadata catalog. The compaction process is applied to the identified set of cached index copies and a compacted set of cached index copies is generated at the first site, whereby the compacted set of cached index copies is synchronized with a respective set of indexes of the plurality of sorted data tables of the LSM tree file system at the second site.Type: GrantFiled: December 21, 2018Date of Patent: July 27, 2021Assignee: VMware, Inc.Inventors: Wenguang Wang, Richard P. Spillane, Junlong Gao, Robert T. Johnson, Christos Karamanolis, Maxime Austruy
-
Patent number: 11061881Abstract: A buffer tree structure includes, at each internal node, a buffer having a compacted portion and an uncompacted portion. Insertion of data elements to the buffer tree can occur units called packets. A packet is initially stored in the uncompacted portion of a receiving node's buffer. When a compaction trigger condition exists, packet compaction is performed including a data element compaction operation. A buffer-emptying (flush) operation pushes the compacted packets to children nodes.Type: GrantFiled: November 8, 2018Date of Patent: July 13, 2021Assignee: VMWARE, INC.Inventors: Robert T Johnson, Abhishek Gupta, Jorge Guerra Delgado, Ittai Abraham, Richard P Spillane, Srinath Premachandran, Sandeep Rangaswamy, Kapil Chowksey