Patents by Inventor Robert T. Johnson

Robert T. Johnson 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).

  • Publication number: 20240256510
    Abstract: A distributed file system operating over a plurality of hosts is built on top of a tree structure having a root node, internal nodes, and leaf nodes. Each host maintains at least one node and non-leaf nodes are allocated buffers according to a workload of the distributed file system. A write operation is performed by inserting write data into one of the nodes of the tree structure having a buffer. A read operation is performed by traversing the tree structure down to a leaf node that stores read target data, collecting updates to the read target data, which are stored in buffers of the traversed nodes, applying the updates to the read target data, and returning the updated read target data as read data.
    Type: Application
    Filed: January 27, 2023
    Publication date: August 1, 2024
    Inventors: Naama BEN DAVID, Aishwarya GANESAN, Jonathan HOWELL, Robert T. JOHNSON, Adriana SZEKERES
  • Patent number: 11893273
    Abstract: A method of writing to a tiered memory system of a computing device, the tiered memory system including volatile memory and persistent memory (PMEM), includes the steps of: in response to a first write request including first data to write to a first page of the tiered memory system, copying contents of the first page to a second page located in the PMEM; after copying the contents of the first page to the second page, writing the first data to the second page; and after writing the first data to the second page, updating a first mapping of the tiered memory system to reference the second page instead of the first page.
    Type: Grant
    Filed: January 20, 2022
    Date of Patent: February 6, 2024
    Assignee: VMware, Inc.
    Inventors: Robert T. Johnson, Alexander John Horton Conway, Yi Xu, Aishwarya Ganesan, Ramnatthan Alagappan
  • Publication number: 20230229346
    Abstract: A method of writing to a tiered memory system of a computing device, the tiered memory system including volatile memory and persistent memory (PMEM), includes the steps of: in response to a first write request including first data to write to a first page of the tiered memory system, copying contents of the first page to a second page located in the PMEM; after copying the contents of the first page to the second page, writing the first data to the second page; and after writing the first data to the second page, updating a first mapping of the tiered memory system to reference the second page instead of the first page.
    Type: Application
    Filed: January 20, 2022
    Publication date: July 20, 2023
    Inventors: Robert T. JOHNSON, Alexander John Horton CONWAY, Yi XU, Aishwarya GANESAN, Ramnatthan ALAGAPPAN
  • Patent number: 11620261
    Abstract: The disclosure herein describes writing data to a log-structured merge (LSM) tree file system on an object storage platform. Write data instructions indicating data for writing to the LSM tree file system are received. Based on the received instructions, the data is written to the first data cache. Based on an instruction to transfer data in the live data cache to the LSM tree file system, the first data cache is converted to a stable cache. A second data cache configured as a live data cache is then generated based on cloning the first data cache. The data in the first data cache is then written to the LSM tree file system. Use of a stable cache and a cloned live data cache enables parallel writing data to the file system by the stable cache and handling write data instructions by the live data cache.
    Type: Grant
    Filed: December 7, 2018
    Date of Patent: April 4, 2023
    Assignee: VMware, Inc.
    Inventors: Wenguang Wang, Richard P. Spillane, Junlong Gao, Robert T. Johnson, Christos Karamanolis, Maxime Austruy
  • Patent number: 11487731
    Abstract: Embodiments described herein are related to a method of scanning a B-tree. For example, a method comprises receiving a scan request to scan a B-tree having a plurality of levels, each level comprising one or more nodes, wherein for each of one or more levels of the plurality of levels, nodes are grouped into groups, where nodes of any given group are stored across sequential disk blocks. The method further comprises generating a queue for each level of the B-tree. For each queue, the method further comprises loading into memory a next group of nodes based upon determining a storage location of a node of the next group of nodes.
    Type: Grant
    Filed: July 16, 2020
    Date of Patent: November 1, 2022
    Assignee: VMWARE, INC.
    Inventors: Abhishek Gupta, Richard P. Spillane, Robert T. Johnson, Srinath Premachandran, Jorge Guerra Delgado, Kapil Chowksey, Sandeep Rangaswamy
  • Publication number: 20220320839
    Abstract: A wire bundle forming apparatus including a wire bundle form board having a plurality of mounting structure couplings, and at least one wire bundle mounting structure configured to couple with the plurality of mounting structure couplings for removably coupling the at least one wire bundle mounting structure to the wire bundle form board in a predetermined pattern corresponding to a predetermined configuration of a wire bundle. The at least one wire bundle mounting structure has a wire receiving portion. The at least one wire bundle mounting structure is common to both arranging at least one wire in the predetermined configuration for formation of the wire bundle, and, when removed from the wire bundle form board with the wire bundle coupled to the at least one wire bundle mounting structure, a fixture for coupling the wire bundle to a structure.
    Type: Application
    Filed: June 8, 2022
    Publication date: October 6, 2022
    Inventors: Jesse A. LAPLANTE, Robert T. JOHNSON, Jin-Seog SEO, Jacky-Vy C. CHAU
  • Patent number: 11394184
    Abstract: A method of forming a wire bundle, the method includes removably coupling a plurality of wire bundle mounting structures to a wire bundle form board, the plurality of wire bundles mounting structures being coupled to the wire bundle form board in a predetermined pattern corresponding to a configuration of the wire bundle. The method also includes inserting one or more wires, of the wire bundle, into the plurality of wire bundle mounting structures, coupling the one or more wires to the plurality of wire bundle mounting structures with a respective wire bundle retention strap of each of the plurality of wire bundle mounting structures so as to form the wire bundle, and removing the one or more wires and the plurality of wire bundle mounting structures from the wire bundle form board as a singular unit.
    Type: Grant
    Filed: May 7, 2018
    Date of Patent: July 19, 2022
    Assignee: The Boeing Company
    Inventors: Jesse A. Laplante, Robert T. Johnson, Jin-Seog Seo, Jacky-Vy C. Chau
  • Patent number: 11176099
    Abstract: 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: Grant
    Filed: December 21, 2018
    Date of Patent: November 16, 2021
    Assignee: VMware, Inc.
    Inventors: Wenguang Wang, Junlong Gao, Richard P. Spillane, Robert T. Johnson, Christos Karamanolis, Maxime Austruy
  • Patent number: 11093450
    Abstract: 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: Grant
    Filed: September 27, 2017
    Date of Patent: August 17, 2021
    Assignee: VMware, Inc.
    Inventors: Wenguang Wang, Abhishek Gupta, Richard P Spillane, Kapil Chowksey, Robert T Johnson
  • Patent number: 11093471
    Abstract: 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: Grant
    Filed: June 5, 2018
    Date of Patent: August 17, 2021
    Assignee: VMware, Inc.
    Inventors: Abhishek Gupta, Richard P. Spillane, Robert T. Johnson, Wenguang Wang, Kapil Chowksey, Jorge Guerra Delgado, Sandeep Rangaswamy, Srinath Premachandran
  • Patent number: 11093472
    Abstract: 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: Grant
    Filed: December 7, 2018
    Date of Patent: August 17, 2021
    Assignee: VMware, Inc.
    Inventors: Richard P. Spillane, Wenguang Wang, Junlong Gao, Robert T. Johnson, Christos Karamanolis, Maxime Austruy
  • Patent number: 11074225
    Abstract: 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: Grant
    Filed: December 21, 2018
    Date of Patent: July 27, 2021
    Assignee: VMware, Inc.
    Inventors: Wenguang Wang, Richard P. Spillane, Junlong Gao, Robert T. Johnson, Christos Karamanolis, Maxime Austruy
  • Patent number: 11069997
    Abstract: An electrical connector includes conductive male and female contacts and insulating inner and outer sleeves, and connects first and second electrical wires end-to-end. The contacts can be attached to corresponding conductors of the first and second wires. The male contact includes an elongated pin; the female contact includes a receptacle. Inserting the pin into the receptacle results in mechanical engagement of, and electrical continuity between, the assembled contacts. The assembled contacts can be positioned within the compressible inner sleeve, which extends beyond the ends of the assembled contacts. The inner sleeve, with the assembled contacts therein, can be positioned within the rigid outer sleeve, which extends at least as far as the inner sleeve. Compression of the inner sleeve by the ends of the outer sleeve frictionally engages the ends of the inner sleeve with the corresponding wires.
    Type: Grant
    Filed: June 13, 2020
    Date of Patent: July 20, 2021
    Assignee: GLENAIR, INC.
    Inventors: Zachary W. Taylor, Robert T. Johnson, Daniel M. Mitchell
  • Patent number: 11061881
    Abstract: 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: Grant
    Filed: November 8, 2018
    Date of Patent: July 13, 2021
    Assignee: VMWARE, INC.
    Inventors: Robert T Johnson, Abhishek Gupta, Jorge Guerra Delgado, Ittai Abraham, Richard P Spillane, Srinath Premachandran, Sandeep Rangaswamy, Kapil Chowksey
  • Patent number: 11048678
    Abstract: Embodiments described herein are related to bulk loading data into a B-tree. Embodiments include generating a first leaf node of a B-tree by allocating a first page for the first leaf node from a leaf page queue comprising a first plurality of sequential pages; and writing one or more tuples to the first page allocated for the first leaf node. Embodiments further include generating an parent node for the first leaf node and a second leaf node of the B-tree by allocating a third page for the parent node from an parent page queue comprising a second plurality of sequential pages, the parent node comprising a first indication of the first leaf node and a second indication of the second leaf node, the first indication and the second indication stored in the third page allocated for the parent.
    Type: Grant
    Filed: March 14, 2019
    Date of Patent: June 29, 2021
    Assignee: VMware, Inc.
    Inventors: Abhishek Gupta, Robert T. Johnson, Richard P. Spillane, Sandeep Rangaswamy, Jorge Guerra Delgado, Srinath Premachandran, Kapil Chowksey
  • Patent number: 10997144
    Abstract: 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. After a time, packets in the uncompacted portion of a buffer are combined into compacted packets in the compacted portion of the buffer. A buffer-emptying (flush) operation pushes the compacted packets to children nodes.
    Type: Grant
    Filed: July 6, 2018
    Date of Patent: May 4, 2021
    Assignee: VMware, Inc.
    Inventors: Robert T Johnson, Ittai Abraham, Abhishek Gupta, Richard P Spillane, Sandeep Rangaswamy, Jorge Guerra Delgado, Srinath Premachandran, Kapil Chowksey
  • Patent number: 10983909
    Abstract: Certain aspects provide systems and methods for performing an operation on a B?-tree. A method comprises writing a message associated with the operation to a first slot in a first buffer of a first non-leaf node of the B?-tree in an append-only manner, wherein a first filter associated with the first slot is used for query operations associated with the first slot. The method further comprises determining that the first buffer is full and, upon determining to flush the message to a non-leaf child node, flushing the message in an append-only manner to a second slot in a second buffer of the non-leaf child node, wherein a second filter associated with the second slot is used for query operations associated with the second slot. The method further comprises, upon determining to flush the message to a leaf node, flushing the message to the leaf node in a sorted manner.
    Type: Grant
    Filed: January 18, 2019
    Date of Patent: April 20, 2021
    Assignee: VMware, Inc.
    Inventors: Abhishek Gupta, Robert T. Johnson, Richard P. Spillane, Sandeep Rangaswamy, Jorge Guerra Delgado, Kapil Chowksey, Srinath Premachandran
  • Patent number: 10909102
    Abstract: Certain aspects provide systems and methods of compacting data within a log-structured merge tree (LSM tree) using sharding. In certain aspects, a method includes determining a size of the LSM tree, determining a compaction time for a compaction of the LSM tree based on the size, determining a number of compaction entities for performing the compaction in parallel based on the compaction time, determining a number of shards based on the number of compaction entities, and determining a key range associated with the LSM tree. The method further comprises dividing the key range by the number of shards into a number of sub key ranges, wherein each of the number of sub key ranges corresponds to a shard of the number of shards and assigning the number of shards to the number of compaction entities for compaction.
    Type: Grant
    Filed: December 6, 2018
    Date of Patent: February 2, 2021
    Assignee: VMware, Inc.
    Inventors: Wenguang Wang, Richard P. Spillane, Junlong Gao, Robert T. Johnson, Christos Karamanolis, Maxime Austruy
  • Publication number: 20210026825
    Abstract: Embodiments described herein are related to a method of scanning a B-tree. For example, a method comprises receiving a scan request to scan a B-tree having a plurality of levels, each level comprising one or more nodes, wherein for each of one or more levels of the plurality of levels, nodes are grouped into groups, where nodes of any given group are stored across sequential disk blocks. The method further comprises generating a queue for each level of the B-tree. For each queue, the method further comprises loading into memory a next group of nodes based upon determining a storage location of a node of the next group of nodes.
    Type: Application
    Filed: July 16, 2020
    Publication date: January 28, 2021
    Inventors: Abhishek GUPTA, Richard P. SPILLANE, Robert T. JOHNSON, Srinath PREMACHANDRAN, Jorge GUERRA DELGADO, Kapil CHOWKSEY, Sandeep RANGASWAMY
  • Patent number: 10824610
    Abstract: 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: Grant
    Filed: September 18, 2018
    Date of Patent: November 3, 2020
    Assignee: VMware, Inc.
    Inventors: Robert T Johnson, Ittai Abraham, Abhishek Gupta, Richard P Spillane, Srinath Premachandran, Jorge Guerra Delgado, Sandeep Rangaswamy, Kapil Chowksey