Patents by Inventor Guy M. Lohman

Guy M. Lohman 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: 11853284
    Abstract: A method includes storing an anchor row vector identification for an anchor row to a local memory. It is determined whether the anchor row vector identification is visible based on isolation requirements. The anchor row vector identification is accessed upon a determination that the anchor row vector identification is visible, and the row vector identification is re-read from the local memory. It is determined whether the anchor row vector identification has not changed since a start of the accessing. Upon a determination that the anchor row vector identification has not changed, read anchor row fields are returned. A first check history is performed on an anchor row history tuple sequence number (TSN) for the anchor row.
    Type: Grant
    Filed: August 29, 2019
    Date of Patent: December 26, 2023
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Ronald J. Barber, Bishwaranjan Bhattacharjee, Mohammad Sadoghi Hamedani, Guy M. Lohman, Chandrasekaran Mohan, Vijayshankar Raman, Richard S. Sidle, Adam J. Storm, Xun Xue
  • Patent number: 11487727
    Abstract: One embodiment provides for a method including performing, by a processing thread, a process that analyzes transactional operations by maintaining the transactional operations in transaction local side logs, and waiting until a successful transaction commit to append the transaction local side logs to a log stream. The processing thread processes the transactional operations on a key used to determine whether existing data is found for the key. The transactional operations are sped up through parallelism based on partitioning tables across nodes handling the transactional operations. A first process is performed by a first processor that processes updates for values of a key based on updating a first start time table index using unique keys and a start time field of a row for a first appearance of each unique key from the transactional operations.
    Type: Grant
    Filed: April 15, 2021
    Date of Patent: November 1, 2022
    Assignee: International Business Machines Corporation
    Inventors: Yuanyuan Tian, Vijayshankar Raman, Ronald J. Barber, Richard S. Sidle, Pinar Tozun, Rene Mueller, Ronen Grosman, Adam J. Storm, Christian M. Garcia-Arellano, Guy M. Lohman
  • Patent number: 11250001
    Abstract: Embodiments of the invention relate to processing data records, and for a multi-phase partitioned data reduction. The first phase relates to processing data records and partitioning the records into a first partition of records having a common characteristic and a second partition of records that are not members of the first partition. The data records in each partition are subject to intra-partition data reduction responsive to a resource constraint. The data records in each partition are also subject to an inter-partition data reduction, also referred to as an aggregation to reduce a footprint for storing the records. Partitions and/or individual records are logically aggregated and a data reduction operation for the logical aggregation of records takes place in response to available resources.
    Type: Grant
    Filed: August 1, 2014
    Date of Patent: February 15, 2022
    Assignee: International Business Machines Corporation
    Inventors: Ronald J. Barber, Vincent Kulandaisamy, Sam S. Lightstone, Guy M. Lohman, Ippokratis Pandis, Vijayshankar Raman, Gregory R. Stager, Wayne J. Young, Liping Zhang
  • Patent number: 11080260
    Abstract: A method includes performing, by a data structure processor, concurrent read and write operations into a hierarchical data structure that includes a mutable tier including extendible hashing, a hash table, and an immutable tier including a concise hash table (CHT) bitmap. Writers acquire latches on the hierarchical data structure elements that the latches modify. The hierarchical data structure elements are directly accessed by readers without acquiring latches. A modify operation is executed by a writer for one or more levels of the hierarchical data structure. When removed portions of the hierarchical data structure are no longer referenced, tracking is performed by use of a combination of a global state value and a copied local state value.
    Type: Grant
    Filed: July 27, 2018
    Date of Patent: August 3, 2021
    Assignee: International Business Machines Corporation
    Inventors: Ronald J. Barber, Viktor Leis, Guy M. Lohman, Vijayshankar Raman, Richard S. Sidle
  • Publication number: 20210232554
    Abstract: One embodiment provides for a method including performing, by a processing thread, a process that analyzes transactional operations by maintaining the transactional operations in transaction local side logs, and waiting until a successful transaction commit to append the transaction local side logs to a log stream. The processing thread processes the transactional operations on a key used to determine whether existing data is found for the key. The transactional operations are sped up through parallelism based on partitioning tables across nodes handling the transactional operations. A first process is performed by a first processor that processes updates for values of a key based on updating a first start time table index using unique keys and a start time field of a row for a first appearance of each unique key from the transactional operations.
    Type: Application
    Filed: April 15, 2021
    Publication date: July 29, 2021
    Inventors: Yuanyuan Tian, Vijayshankar Raman, Ronald J. Barber, Richard S. Sidle, Pinar Tozun, Rene Mueller, Ronen Grosman, Adam J. Storm, Christian M. Garcia-Arellano, Guy M. Lohman
  • Patent number: 11042522
    Abstract: One embodiment provides for a method including processing transactional operations on a key used to determine whether existing data is found for that key. A first time index is updated using unique keys and a start time field of a first appearance of each key from the transactional operations. A deferred update of prior versions of the key is performed for non-recent data upon determining that recent data in the transactional operations is found for the key.
    Type: Grant
    Filed: June 11, 2018
    Date of Patent: June 22, 2021
    Assignee: International Business Machines Corporation
    Inventors: Yuanyuan Tian, Vijayshankar Raman, Ronald J. Barber, Richard S. Sidle, Pinar Tozun, Rene Mueller, Ronen Grosman, Adam J. Storm, Christian M. Garcia-Arellano, Guy M. Lohman
  • Patent number: 10831736
    Abstract: A method includes performing a lookup using a key into a root node of a multi-tier data structure, to find a partition for performing an insert. A lookup for the key is performed on a first level index that is part of a linked data structure. A payload or reference is added to the linked data structure based on data structure criterion, otherwise the key and the payload are added to the linked data structure if the key is not found. A new first level index is created and added to the linked data structure upon the linked data structure remaining unchanged. The key and the payload or reference are added to the new index. Based on merge criterion, a new second level index is created and a portion of content from selected first level and second level indexes are merged for combining into the new second level index.
    Type: Grant
    Filed: March 27, 2015
    Date of Patent: November 10, 2020
    Assignee: International Business Machines Corporation
    Inventors: Ronald J. Barber, Viktor Leis, Guy M. Lohman, Vijayshankar Raman, Richard S. Sidle
  • Patent number: 10831775
    Abstract: One embodiment provides a method for efficient representation, access and modification of variable length data objects including converting, by a processor, all object updates into appends. The processor divides each object update into bounded size tokens. The tokens are stored normalized as an anchor and a linked list of fragments, the anchor having a pointer to a linked list of fragments. A fragment comprises a contiguous list of tokens that correspond to the appends.
    Type: Grant
    Filed: January 6, 2017
    Date of Patent: November 10, 2020
    Assignee: International Business Machines Corporation
    Inventors: Ronald J. Barber, Guy M. Lohman, Vijayshankar Raman, Richard S. Sidle, Pinar Tozun
  • Patent number: 10671292
    Abstract: A method of orchestrated shuffling of data in a non-uniform memory access device including a plurality of processing nodes that connected by interconnects. The method includes running an application on a plurality of threads executing on the plurality of processing nodes. Data to be shuffled is identified from source threads running on source processing nodes among the processing nodes to target threads executing on target processing nodes among the processing nodes. The method further includes generating a plan for orchestrating the shuffling of the data among the all of the memory devices associated with the threads and for simultaneously transmitting data over different interconnects to a plurality of different target processing nodes from a plurality of different source processing nodes. The data is shuffled among all of the memory devices based on the plan and each processing node is capable of accessing data from first and second local memory devices.
    Type: Grant
    Filed: December 1, 2017
    Date of Patent: June 2, 2020
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Yinan Li, Guy M. Lohman, Rene Mueller, Ippokratis Pandis, Vijayshankar Raman
  • Patent number: 10650011
    Abstract: A method includes logically organizing, by an object hierarchy processor, data objects in a first hierarchy. A portion of the data objects in the first hierarchy logically includes groupings of other data objects. The object hierarchy processor physically organizes the data objects across two or more types of memory in a second hierarchy. Another portion of the data objects in the second hierarchy physically includes groupings of other data objects. Groupings of the data objects in the second hierarchy are dynamically moved across the two or more types of memory. Levels of access of the data objects are tracked using a data structure that maps groupings of the data objects in the first hierarchy onto metadata information including combined access frequencies of the data objects, and current number of accessors to the data objects, in each grouping of the data objects.
    Type: Grant
    Filed: March 20, 2015
    Date of Patent: May 12, 2020
    Assignee: International Business Machines Corporation
    Inventors: Ronald J. Barber, Bishwaranjan Bhattacharjee, Mohammad Sadoghi Hamedani, Guy M. Lohman, Chandrasekaran Mohan, Ippokratis Pandis, Vijayshankar Raman, Richard S. Sidle, Adam J. Storm
  • Patent number: 10592556
    Abstract: Embodiments include a method, system, and computer program product for encoding data while it is being processed as part of a query is provided. The method includes receiving a query request and determining a set of values associated with data to be encoded for completing the query request. The method also includes encoding those values such that any subsequent processing operations can be performed on the encoded values to complete the requested query. After performing the subsequent processing operations to complete the requested query, each value is decoded back to its original value.
    Type: Grant
    Filed: May 10, 2016
    Date of Patent: March 17, 2020
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Gopi K. Attaluri, Ronald J. Barber, Vincent Kulandaisamy, Sam S. Lightstone, Guy M. Lohman, Ippokratis Pandis, Vijayshankar Raman, Richard S. Sidle, Liping Zhang, Naresh Chainani
  • Patent number: 10534544
    Abstract: A method of orchestrated shuffling of data in a non-uniform memory access device that includes a plurality of processing nodes that are connected by interconnects. The method includes running an application on a plurality of threads executing on the plurality of processing nodes. Data to be shuffled is identified from source threads running on source processing nodes among the processing nodes to target threads executing on target processing nodes among the processing nodes. The method further includes generating a plan for orchestrating the shuffling of the data among the all of the memory devices associated with the threads and for simultaneously transmitting data over different interconnects to a plurality of different target processing nodes from a plurality of different source processing nodes. The data is shuffled among all of the memory devices based on the plan. The data includes operand data and operational state data of the source threads.
    Type: Grant
    Filed: December 1, 2017
    Date of Patent: January 14, 2020
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Yinan Li, Guy M. Lohman, Rene Mueller, Ippokratis Pandis, Vijayshankar Raman
  • Patent number: 10521128
    Abstract: A method of orchestrated shuffling of data in a non-uniform memory access device that includes a plurality of processing nodes connected by interconnects. The method includes running an application on a plurality of threads executing on the plurality of processing nodes. Data to be shuffled is identified from source threads running on source processing nodes among the processing nodes to target threads executing on target processing nodes among the processing nodes. The method further includes generating a plan for orchestrating the shuffling of the data among the all of the memory devices associated with the threads and for simultaneously transmitting data over different interconnects to a plurality of different target processing nodes from a plurality of different source processing nodes. The data is shuffled among all of the memory devices based on the plan. Shifting the data-shifting table includes rotating a first ring with respect to a second ring.
    Type: Grant
    Filed: December 1, 2017
    Date of Patent: December 31, 2019
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Yinan Li, Guy M. Lohman, Rene Mueller, Ippokratis Pandis, Vijayshankar Raman
  • Publication number: 20190384754
    Abstract: A method includes storing an anchor row vector identification for an anchor row to a local memory. It is determined whether the anchor row vector identification is visible based on isolation requirements. The anchor row vector identification is accessed upon a determination that the anchor row vector identification is visible, and the row vector identification is re-read from the local memory. It is determined whether the anchor row vector identification has not changed since a start of the accessing. Upon a determination that the anchor row vector identification has not changed, read anchor row fields are returned. A first check history is performed on an anchor row history tuple sequence number (TSN) for the anchor row.
    Type: Application
    Filed: August 29, 2019
    Publication date: December 19, 2019
    Inventors: Ronald J. Barber, Bishwaranjan Bhattacharjee, Mohammad Sadoghi Hamedani, Guy M. Lohman, Chandrasekaran Mohan, Vijayshankar Raman, Richard S. Sidle, Adam J. Storm, Xun Xue
  • Publication number: 20190377809
    Abstract: One embodiment provides for a method including processing transactional operations on a key used to determine whether existing data is found for that key. A first time index is updated using unique keys and a start time field of a first appearance of each key from the transactional operations. A deferred update of prior versions of the key is performed for non-recent data upon determining that recent data in the transactional operations is found for the key.
    Type: Application
    Filed: June 11, 2018
    Publication date: December 12, 2019
    Inventors: Yuanyuan Tian, Vijayshankar Raman, Ronald J. Barber, Richard S. Sidle, Pinar Tozun, Rene Mueller, Ronen Grosman, Adam J. Storm, Christian M. Garcia-Arellano, Guy M. Lohman
  • Patent number: 10489374
    Abstract: A method includes setting, by an update processor, a write latch in a first data structure associated with an object. The first data structure is copied to a storage structure. A history tuple sequence number (TSN) of the first data structure is set to point to a TSN of the copied first data structure. The version identifier is set to point to a transaction identification for the object. Data portions are updated for the first data structure. The version identifier is read from the first data structure. It is determined whether the version identifier of the first data structure is visible for a transaction including isolation requirements. If version identifier of the first data structure is visible, the first data structure is accessed and it is determined whether the version identifier of the first data structure changed since starting the transaction.
    Type: Grant
    Filed: June 1, 2015
    Date of Patent: November 26, 2019
    Assignee: International Business Machines Corporation
    Inventors: Ronald J. Barber, Bishwaranjan Bhattacharjee, Mohammad Sadoghi Hamedani, Guy M. Lohman, Chandrasekaran Mohan, Vijayshankar Raman, Richard S. Sidle, Adam J. Storm, Xun Xue
  • Patent number: 10346404
    Abstract: A database table is partitioned with column-major layout by limiting partitioning one or more columns containing join-column values for a join operator. Join operations are executed for joining the partitioned columns.
    Type: Grant
    Filed: March 25, 2016
    Date of Patent: July 9, 2019
    Assignee: International Business Machines Corporation
    Inventors: Stefan Arndt, Gopi K. Attaluri, Ronald J. Barber, Guy M. Lohman, Lin Qiao, Vijayshankar Raman, Eugene J. Shekita, Richard S. Sidle
  • Patent number: 10303791
    Abstract: A method includes joining data between at least two data sets. Values of one or more join attributes of each of the data sets is represented in a compressed form, indicated by an encoding scheme. A compression scheme for the one or more join attributes is dynamically selected.
    Type: Grant
    Filed: March 20, 2015
    Date of Patent: May 28, 2019
    Assignee: International Business Machines Corporation
    Inventors: Gopi K. Attaluri, Ronald J. Barber, Naresh K. Chainani, Guy M. Lohman, Ippokratis Pandis, Vijayshankar Raman, Richard S. Sidle
  • Patent number: 10296619
    Abstract: A system joins predicate evaluated column bitmaps having varying lengths. The system includes a column unifier for querying column values with a predicate generating an indicator bit for each of the column values that is then joined with the respective column value. The system also includes a bitmap generator for creating a column-major linear bitmap from the column values and indicator bits. The column unifier also determines an offset between adjacent indicator bits. The system also includes a converter for multiplying the column-major linear bitmap with a multiplier to shift the indicator bits into consecutive positions in the linear bitmap.
    Type: Grant
    Filed: September 28, 2015
    Date of Patent: May 21, 2019
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Ronald J Barber, Min-Soo Kim, Jae Gil Lee, Sam S Lightstone, Guy M Lohman, Lin Qiao, Vijayshankar Raman, Richard S Sidle
  • Patent number: 10152337
    Abstract: Embodiments relate to data shuffling by logically rotating processing nodes. The nodes are logically arranged in a two or three dimensional matrix. Every time two of the nodes in adjacent rows of the matrix are aligned, adjacent nodes exchange data. The positional alignment is a logical alignment of the nodes. The nodes are logically arranged and rotated, and data is exchanged in response to the logical rotation.
    Type: Grant
    Filed: August 12, 2016
    Date of Patent: December 11, 2018
    Assignee: International Business Machines Corporation
    Inventors: Ronald J. Barber, Robert S. Germain, Guy M. Lohman, Rene Mueller, Ippokratis Pandis, Vijayshankar Raman