Patents by Inventor Kevin James Kathmann

Kevin James Kathmann 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: 9390108
    Abstract: Nodes in a query execution data structure have monitor and dump methods defined. The monitor method enables the collection of information from the node. The dump method outputs the monitored information from each node. A monitor and debug mechanism of the preferred embodiments includes a graphical user interface that allows a user to graphically examine a query execution tree, to enable monitoring of the nodes on a node-by-node basis, and to view information dumped from the query execution data structure as the query is executed or after the query is executed. The result is a powerful tool that allows efficiently monitoring and debugging a query implemented in an object oriented query execution data structure.
    Type: Grant
    Filed: February 27, 2008
    Date of Patent: July 12, 2016
    Assignee: International Business Machines Corporation
    Inventors: David Glenn Carlson, Steven Virgil Hoeschen, Kevin James Kathmann
  • Patent number: 9092464
    Abstract: Nodes in a query execution data structure have monitor and dump methods defined. The monitor method enables the collection of information from the node. The dump method outputs the monitored information from each node. A monitor and debug mechanism of the preferred embodiments includes a graphical user interface that allows a user to graphically examine a query execution tree, to enable monitoring of the nodes on a node-by-node basis, and to view information dumped from the query execution data structure as the query is executed or after the query is executed. The result is a powerful tool that allows efficiently monitoring and debugging a query implemented in an object oriented query execution data structure.
    Type: Grant
    Filed: November 17, 2005
    Date of Patent: July 28, 2015
    Assignee: International Business Machines Corporation
    Inventors: David Glenn Carlson, Steven Virgil Hoeschen, Kevin James Kathmann
  • Patent number: 8478889
    Abstract: A stream data node receives real-time streamed data from one or more input devices, dynamically filters the streamed data to reduce the streamed data, and delivers the reduced data when requested. By providing real-time filtering of the data, the amount of data that must be stored in a database may be substantially reduced. The stream data node can perform aggregation functions, group functions, and select functions, thereby also significantly reducing the amount of data that must be stored in a database. The stream data node may also be part of a query execution data structure, where it delivers its data when requested by another node in the query execution data structure.
    Type: Grant
    Filed: February 18, 2009
    Date of Patent: July 2, 2013
    Assignee: International Business Machines Corporation
    Inventors: Robert Joseph Bestgen, David Glenn Carlson, Kevin James Kathmann
  • Patent number: 8082265
    Abstract: A method, apparatus and program product dynamically activate and/or deactivate buffers during execution of a database query. The dynamic deactivation and activation is based on the monitoring of information associated with the consumption of data by a plurality of threads during execution of an access plan for the database query. By doing so, the selection of a less optimal buffer position during optimization may be replaced with a more optimal buffer position during runtime, often resulting in improved query performance and parallelism.
    Type: Grant
    Filed: March 27, 2008
    Date of Patent: December 20, 2011
    Assignee: International Business Machines Corporation
    Inventors: David Glenn Carlson, Wei Hu, Kevin James Kathmann, Shantan Kethireddy, Andrew Peter Passe, Ulrich Thiemann
  • Publication number: 20100036805
    Abstract: Embodiments of the invention provide techniques for maintaining I/O value caches for database queries. Each maintained cache may be configured for use with a particular database query. Each cache may be persistently maintained in a system, meaning the cache is not automatically deleted after some period of time, and may thus be used to process subsequent instances of the same query. By use of the maintained cache, executing subsequent instances of the query may be avoided, thus saving time and system resources. Further, the maintained cache may be adapted to process other queries having similar characteristics to the initial query. The data included in each cache may be refreshed as required by changes to the underlying data.
    Type: Application
    Filed: August 5, 2008
    Publication date: February 11, 2010
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Thomas William Blamer, Wei Hu, Kevin James Kathmann, Shantan Kethireddy, Andrew Peter Passe, Ulrich Thiemann
  • Publication number: 20100036804
    Abstract: Embodiments of the invention provide techniques for maintaining I/O value caches for database queries. Each maintained cache may be configured for use with a particular database query. Each cache may be persistently maintained in a system, meaning the cache is not automatically deleted after some period of time, and may thus be used to process subsequent instances of the same query. By use of the maintained cache, executing subsequent instances of the query may be avoided, thus saving time and system resources. Further, the maintained cache may be adapted to process other queries having similar characteristics to the initial query. The data included in each cache may be refreshed as required by changes to the underlying data.
    Type: Application
    Filed: August 5, 2008
    Publication date: February 11, 2010
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Thomas William Blamer, Wei Hu, Kevin James Kathmann, Shantan Kethireddy, Andrew Peter Passe, Ulrich Thiemann
  • Publication number: 20090248618
    Abstract: A method, apparatus and program product dynamically activate and/or deactivate buffers during execution of a database query. The dynamic deactivation and activation is based on the monitoring of information associated with the consumption of data by a plurality of threads during execution of an access plan for the database query. By doing so, the selection of a less optimal buffer position during optimization may be replaced with a more optimal buffer position during runtime, often resulting in improved query performance and parallelism.
    Type: Application
    Filed: March 27, 2008
    Publication date: October 1, 2009
    Inventors: David Glenn Carlson, Wei Hu, Kevin James Kathmann, Shantan Kethireddy, Andrew Peter Passe, Ulrich Thiemann
  • Publication number: 20090150560
    Abstract: A stream data node receives real-time streamed data from one or more input devices, dynamically filters the streamed data to reduce the streamed data, and delivers the reduced data when requested. By providing real-time filtering of the data, the amount of data that must be stored in a database may be substantially reduced. The stream data node can perform aggregation functions, group functions, and select functions, thereby also significantly reducing the amount of data that must be stored in a database. The stream data node may also be part of a query execution data structure, where it delivers its data when requested by another node in the query execution data structure.
    Type: Application
    Filed: February 18, 2009
    Publication date: June 11, 2009
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Robert Joseph Bestgen, David Glenn Carlson, Kevin James Kathmann
  • Patent number: 7512700
    Abstract: A stream data node receives real-time streamed data from one or more input devices, dynamically filters the streamed data to reduce the streamed data, and delivers the reduced data when requested. By providing real-time filtering of the data, the amount of data that must be stored in a database may be substantially reduced. The stream data node can perform aggregation functions, group functions, and select functions, thereby also significantly reducing the amount of data that must be stored in a database. The stream data node may also be part of a query execution data structure, where it delivers its data when requested by another node in the query execution data structure.
    Type: Grant
    Filed: September 30, 2005
    Date of Patent: March 31, 2009
    Assignee: International Business Machines Corporation
    Inventors: Robert Joseph Bestgen, David Glenn Carlson, Kevin James Kathmann
  • Publication number: 20080162543
    Abstract: Nodes in a query execution data structure have monitor and dump methods defined. The monitor method enables the collection of information from the node. The dump method outputs the monitored information from each node. A monitor and debug mechanism of the preferred embodiments includes a graphical user interface that allows a user to graphically examine a query execution tree, to enable monitoring of the nodes on a node-by-node basis, and to view information dumped from the query execution data structure as the query is executed or after the query is executed. The result is a powerful tool that allows efficiently monitoring and debugging a query implemented in an object oriented query execution data structure.
    Type: Application
    Filed: February 27, 2008
    Publication date: July 3, 2008
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: David Glenn Carlson, Steven Virgil Hoeschen, Kevin James Kathmann
  • Publication number: 20080148103
    Abstract: Nodes in a query execution data structure have monitor and dump methods defined. The monitor method enables the collection of information from the node. The dump method outputs the monitored information from each node. A monitor and debug mechanism of the preferred embodiments includes a graphical user interface that allows a user to graphically examine a query execution tree, to enable monitoring of the nodes on a node-by-node basis, and to view information dumped from the query execution data structure as the query is executed or after the query is executed. The result is a powerful tool that allows efficiently monitoring and debugging a query implemented in an object oriented query execution data structure.
    Type: Application
    Filed: February 27, 2008
    Publication date: June 19, 2008
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: David Glenn Carlson, Steven Virgil Hoeschen, Kevin James Kathmann
  • Patent number: 7315855
    Abstract: Methods, systems and articles of manufacture of processing a multi-state attribute field query. One embodiment provides a method of processing a multi-state attribute field query, comprising instantiating a plurality of live objects; performing, by each live object, an attribute operation, wherein at least one attribute operation is a comparison operation associated with attributes of the query. The plurality of live objects access a global status storage area only when an operand of the comparison operation is null or error. In any case, execution control is passed from each live object to an adjacent live object.
    Type: Grant
    Filed: May 12, 2005
    Date of Patent: January 1, 2008
    Assignee: International Business Machines Corporation
    Inventors: David Glenn Carlson, Kevin James Kathmann
  • Patent number: 7136848
    Abstract: Previously-optimized database queries are stored in memory. When a new query needs to be optimized, the previously-optimized queries are examined to determine whether the new query has been previously optimized. If the new query has not been previously optimized, the previously-optimized queries are examined to determine whether any previously-optimized queries differ only in data type of one or more operands when compared to the new query. If a previously-optimized query that differs only in data type is located, the previously-optimized query is refreshed to reflect the different data type without the need of optimizing the new query from scratch. Portions of previously-optimized queries may thus be re-used even when a previously-optimized query is not identical to a new query to be optimized. As a result, the performance of query optimization in a database system is increased.
    Type: Grant
    Filed: August 29, 2002
    Date of Patent: November 14, 2006
    Assignee: International Business Machines Corporation
    Inventors: David Glenn Carlson, Kevin James Kathmann
  • Patent number: 7089230
    Abstract: Methods, systems and articles of manufacture of processing a multi-state attribute field query. One embodiment provides a method of processing a multi-state attribute field query, comprising instantiating a plurality of live objects; performing, by each live object, an attribute operation, wherein at least one attribute operation is a comparison operation associated with attributes of the query. The plurality of live objects access a global status storage area only when an operand of the comparison operation is null or error. In any case, execution control is passed from each live object to an adjacent live object.
    Type: Grant
    Filed: June 7, 2002
    Date of Patent: August 8, 2006
    Assignee: International Business Machines Corporation
    Inventors: David Glenn Carlson, Kevin James Kathmann
  • Patent number: 6999958
    Abstract: An apparatus, program product and method perform runtime query optimization during execution of a query to select from among multiple available plans, or implementations, capable of implementing the query. The runtime query optimization utilizes a runtime-derived performance criterion to dynamically select from among multiple query implementations. A performance criterion is dynamically evaluated during execution of at least a portion of a query, and one of a plurality of query implementations defined in the query is selected based upon the dynamically-evaluated performance criterion. Once selected, execution of the query is continued using the selected query implementation.
    Type: Grant
    Filed: June 7, 2002
    Date of Patent: February 14, 2006
    Assignee: International Business Machines Corporation
    Inventors: David Glenn Carlson, Kevin James Kathmann, Lawrence Kenneth Nash
  • Patent number: 6915291
    Abstract: An apparatus, program product and method represent a database query access plan a query execution data structure including a plurality of query node objects arranged into a tree relationship to define a parent node object and at least one child node object, and an attribute data structure that references a plurality of attributes utilized by the query execution data structure. At least one of the parent and child node objects includes an attribute operation data structure configured to manipulate at least a subset of the plurality of attributes in the attribute data structure by accessing the attribute operation data structure. By partitioning the functionality of a query access plan into a collection of node objects and an attribute data structure, and then providing within at least a subset of the node objects attribute operation data structures that manipulate the attribute data structure, the resulting query engine architecture becomes significantly extendible and adaptable.
    Type: Grant
    Filed: June 7, 2002
    Date of Patent: July 5, 2005
    Assignee: International Business Machines Corporation
    Inventors: David Glenn Carlson, David Lee Hermsmeier, Kevin James Kathmann, Thomas Owen McKinley
  • Patent number: 6910032
    Abstract: An apparatus, program product and method utilize a dynamically-populated query buffer to facilitate the handling of at least a portion of a database query in parallel. A query is implemented using at least first and second portions, where the second portion of the query is executed in parallel using a plurality of threads. The first portion of the query is executed to dynamically populate a query buffer with records from a data source, and the plurality of threads that execute the second portion of the query are specified to the query buffer so that the effective data source for the second portion of the query comprises the records that are dynamically populated into the query buffer.
    Type: Grant
    Filed: June 7, 2002
    Date of Patent: June 21, 2005
    Assignee: International Business Machines Corporation
    Inventors: David Glenn Carlson, Tariq Mahmood Choudhry, Kevin James Kathmann
  • Patent number: 6725223
    Abstract: A storage format and methods for improving the performance of the symbol table of an encoded vector index. The symbol table comprises a hash table, entries of the hash table storing associated key values and codes for the encoded vector index. Hash table entries store an accumulated count of occurrences of prior and the current key values, which improves the efficiency of responding to a request for a key range count. A binary radix tree is used to locate entries, which comprises a plurality of nodes, corresponding to binary digits of a binary representation of a key value. Codes are assigned to key values for the encoded vector index in a distributed fashion, so there are available code values between existing code values in the code ordering, that can be assigned to new key values, alleviating the need to reorganize the code values upon an insertion.
    Type: Grant
    Filed: December 22, 2000
    Date of Patent: April 20, 2004
    Assignee: International Business Machines Corporation
    Inventors: Abdo Esmail Abdo, Kevin James Kathmann, Kurt Walter Pinnow
  • Publication number: 20030229639
    Abstract: An apparatus, program product and method perform runtime query optimization during execution of a query to select from among multiple available plans, or implementations, capable of implementing the query. The runtime query optimization utilizes a runtime-derived performance criterion to dynamically select from among multiple query implementations. A performance criterion is dynamically evaluated during execution of at least a portion of a query, and one of a plurality of query implementations defined in the query is selected based upon the dynamically-evaluated performance criterion. Once selected, execution of the query is continued using the selected query implementation.
    Type: Application
    Filed: June 7, 2002
    Publication date: December 11, 2003
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: David Glenn Carlson, Kevin James Kathmann, Lawrence Kenneth Nash
  • Publication number: 20030229621
    Abstract: Previously-optimized database queries are stored in memory. When a new query needs to be optimized, the previously-optimized queries are examined to determine whether the new query has been previously optimized. If the new query has not been previously optimized, the previously-optimized queries are examined to determine whether any previously-optimized queries differ only in data type of one or more operands when compared to the new query. If a previously-optimized query that differs only in data type is located, the previously-optimized query is refreshed to reflect the different data type without the need of optimizing the new query from scratch. Portions of previously-optimized queries may thus be re-used even when a previously-optimized query is not identical to a new query to be optimized. As a result, the performance of query optimization in a database system is increased.
    Type: Application
    Filed: August 29, 2002
    Publication date: December 11, 2003
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: David Glenn Carlson, Kevin James Kathmann