Patents by Inventor Robert Joseph Bestgen

Robert Joseph Bestgen 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: 9411861
    Abstract: A method, apparatus and program product are provided for performing a query of a database. A database query is received, which includes first and second operations respectively configured to generate first and second disjoint results sets from a dataspace. The database query is analyzed to identify a set of attributes from the dataspace that are used by at least one of the first and second operations in the database query. During execution of the database query, a plurality of records from the dataspace is iteratively processed in a single pass, including, for each of the plurality of records, processing such record by retrieving the plurality of attributes for such record from the dataspace and performing each of the first and second operations on the record using the retrieved attributes for such record to build the first and second disjoint results sets.
    Type: Grant
    Filed: December 21, 2007
    Date of Patent: August 9, 2016
    Assignee: International Business Machines Corporation
    Inventors: Robert Joseph Bestgen, David Glenn Carlson, Robert Victor Downer, Shantan Kethireddy
  • Patent number: 9087102
    Abstract: Methods, systems, and computer program products are provided for improving the processing of database queries. Some embodiments include detecting an overly long running query execution plan, stopping execution of the plan, and utilizing the query optimizer to select an alternate plan for execution. Embodiments may utilize system timers which are set with a time limit for the first selected plan, with instructions to re-optimize and initiate selection of an alternate plan when the timer times out. Risky constructs may be located in the first plan and removed from future consideration for executing the query. In some embodiments, the additional overhead for non-problem queries consists of little more than creating and sending a message or setting a timer when starting query execution, and canceling a timer upon successful query processing completion. A secondary thread may be created responsive to detecting a long running query, to supervise selecting an alternate execution plan.
    Type: Grant
    Filed: October 9, 2007
    Date of Patent: July 21, 2015
    Assignee: International Business Machines Corporation
    Inventors: Robert Joseph Bestgen, Michael S. France, Brian Robert Muras
  • Patent number: 9063982
    Abstract: A query facility for database queries dynamically determines whether selective portions of a database table are likely to benefit from separate query execution strategies, and constructs an appropriate separate execution strategies accordingly. Preferably, the database contains at least one relatively large table comprising multiple partitions, each sharing the definitional structure of the table and containing a different respective discrete subset of the table records. The query facility compares metadata for different partitions to determine whether sufficiently large differences exist among the partitions, and in appropriate cases selects one or more partitions for separate execution strategies. Preferably, partitions are ranked for separate evaluation using a weighting formula which takes into account: (a) the number of indexes for the partition, (b) recency of change activity, and (c) the size of the partition.
    Type: Grant
    Filed: January 24, 2013
    Date of Patent: June 23, 2015
    Assignee: International Business Machines Corporation
    Inventors: Robert Joseph Bestgen, Shantan Kethireddy, Jeffrey Wayne Tenner
  • Patent number: 8935231
    Abstract: A query optimizer optimizes a query to a partitioned database table by determining common characteristics of the partitions and generating a virtual maintained temporary index that spans multiple partitions. Using the virtual maintained temporary index allows the query optimizer to generate an access plan based on the virtual maintained temporary index, which relieves the optimizer from having to individually optimize access to each partition for partitions that share common characteristics.
    Type: Grant
    Filed: May 14, 2008
    Date of Patent: January 13, 2015
    Assignee: International Business Machines Corporation
    Inventors: Robert Joseph Bestgen, Robert Victor Downer, Shantan Kethireddy
  • Patent number: 8838573
    Abstract: An index advice record engine generates and stores index advice records. An index advice policy mechanism allows a user to define an index advice policy that specifies criteria for autonomic index creation. An autonomic index creation mechanism reads the index advice records, compares this information with the criteria in the user-defined index advice policies, and determines whether an index should be created based on the information in the index advice records and the index advice policies. By automating the process of creating indexes according to user-defined policies, the preferred embodiments alleviate human users from most of the work of manually creating indexes.
    Type: Grant
    Filed: June 9, 2006
    Date of Patent: September 16, 2014
    Assignee: International Business Machines Corporation
    Inventors: Mark John Anderson, Robert Joseph Bestgen, James Michael Flanagan, Scott Forstie, Thomas James Schreiber
  • Patent number: 8838574
    Abstract: An index advice record engine generates and stores index advice records. An index advice policy mechanism allows a user to define an index advice policy that specifies criteria for autonomic index creation, modification and deletion. An autonomic index mechanism reads the index advice records, compares this information with the criteria in the user-defined index advice policies, and determines whether an index should be created, modified or deleted based on the information in the index advice records and the index advice policies. By automating the process of creating, modifying and deleting indexes according to user-defined policies, the preferred embodiments alleviate human users from most of the work of manually creating, modifying and deleting indexes.
    Type: Grant
    Filed: June 9, 2006
    Date of Patent: September 16, 2014
    Assignee: International Business Machines Corporation
    Inventors: Mark John Anderson, Robert Joseph Bestgen, James Michael Flanagan, Scott Forstie, Thomas James Schreiber
  • Patent number: 8595212
    Abstract: An index advice record engine generates and stores index advice records. An index advice policy mechanism allows a user to define an index advice policy that specifies criteria for autonomic index creation, modification and deletion. An autonomic index mechanism reads the index advice records, compares this information with the criteria in the user-defined index advice policies, and determines whether an index should be created, modified or deleted based on the information in the index advice records and the index advice policies. By automating the process of creating, modifying and deleting indexes according to user-defined policies, the preferred embodiments alleviate human users from most of the work of manually creating, modifying and deleting indexes.
    Type: Grant
    Filed: August 15, 2008
    Date of Patent: November 26, 2013
    Assignee: International Business Machines Corporation
    Inventors: Mark John Anderson, Robert Joseph Bestgen, James Michael Flanagan, Scott Forstie, Thomas James Schreiber
  • 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: 8452756
    Abstract: A database query optimizer includes an access plan storage mechanism that stores execution detail corresponding to a query statement in an access plan cache. By storing execution detail in the access plan cache along with the query statement, the execution detail is available when needed to debug database problems, even after a problem occurs. The execution detail stored in the access plan cache may be mined and analyzed after-the-fact, producing a very powerful tool for debugging database problems. Snapshots of the execution detail may also be created by a user. In addition, the user may setup autonomic snapshots and comparisons so that a user may be alerted from a degradation in database performance between two snapshots.
    Type: Grant
    Filed: November 9, 2006
    Date of Patent: May 28, 2013
    Assignee: International Business Machines Corporation
    Inventors: Mark John Anderson, Robert Joseph Bestgen, Daniel E. Beuch, Curtis Neal Boger, James Michael Flanagan, Scott Forstie, Shantan Kethireddy, Thomas Owen McKinley, Michael Donald Pfeifer
  • Patent number: 8386463
    Abstract: A query facility for database queries dynamically determines whether selective portions of a database table are likely to benefit from separate query execution strategies, and constructs an appropriate separate execution strategies accordingly. Preferably, the database contains at least one relatively large table comprising multiple partitions, each sharing the definitional structure of the table and containing a different respective discrete subset of the table records. The query facility compares metadata for different partitions to determine whether sufficiently large differences exist among the partitions, and in appropriate cases selects one or more partitions for separate execution strategies. Preferably, partitions are ranked for separate evaluation using a weighting formula which takes into account: (a) the number of indexes for the partition, (b) recency of change activity, and (c) the size of the partition.
    Type: Grant
    Filed: July 14, 2005
    Date of Patent: February 26, 2013
    Assignee: International Business Machines Corporation
    Inventors: Robert Joseph Bestgen, Shantan Kethireddy, Jeffrey Wayne Tenner
  • Patent number: 8135703
    Abstract: An apparatus and method for a multi-partition query governor in a partitioned computer database system. In preferred embodiments a query governor uses data of a query governor file that is associated with multiple partitions to determine how the query governor manages access to the database across multiple partitions. Also, in preferred embodiments, the query governor in a local partition that receives a query request communicates with a query governor in a target partition to accumulate the total resource demands of the query on the local and target partitions. In preferred embodiments, a query governor estimates whether resources to execute a query will exceed a threshold over all or a combination of database partitions.
    Type: Grant
    Filed: September 28, 2010
    Date of Patent: March 13, 2012
    Assignee: International Business Machines Corporation
    Inventors: Eric Lawrence Barsness, Robert Joseph Bestgen, John Matthew Santosuosso
  • Patent number: 8121988
    Abstract: An index advice record engine generates and stores index advice records. An index advice policy mechanism allows a user to define an index advice policy that specifies criteria for autonomic index creation, modification and deletion. An autonomic index mechanism reads the index advice records, compares this information with the criteria in the user-defined index advice policies, and determines whether an index should be created, modified or deleted based on the information in the index advice records and the index advice policies. By automating the process of creating, modifying and deleting indexes according to user-defined policies, the preferred embodiments alleviate human users from most of the work of manually creating, modifying and deleting indexes.
    Type: Grant
    Filed: August 19, 2008
    Date of Patent: February 21, 2012
    Assignee: International Business Machines Corporation
    Inventors: Mark John Anderson, Robert Joseph Bestgen, James Michael Flanagan, Scott Forstie, Thomas James Schreiber
  • Patent number: 8015202
    Abstract: Embodiments of the invention provide techniques for aggregating database queries for energy efficiency. In one embodiment, queries received by a DBMS are aggregated and staged according to hard-disk drives required for query execution. Each group of queries accessing a given drive may be dispatched for execution together. Further, the queries received by a DBMS may be matched to patterns of previously received queries. The matching patterns may be used to predict other queries which are likely to be received by the DBMS. The received queries may be staged to be dispatched with the predicted queries. By aggregating queries to be executed, access to each hard-disk drive may be optimized, thus reducing the overall energy consumption required for executing the queries.
    Type: Grant
    Filed: June 19, 2008
    Date of Patent: September 6, 2011
    Assignee: International Business Machines Corporation
    Inventors: Robert Joseph Bestgen, Wei Hu, Shantan Kethireddy, Andrew Peter Passe, Ulrich Thiemann
  • Patent number: 7991763
    Abstract: A method, apparatus and program product to optimize a database query. In a first system having a first dataspace, a query plan is generated for the database query. Remote statistics collection associated with the database query is initiated on a second system having a second dataspace. The remote statistics collection uses the second dataspace, which includes a current copy of at least a portion of the first dataspace on the first system. Database statistics are collected for the first system by analyzing the second dataspace and then communicating the collected database statistics to the first system for use in optimizing database queries executed by the first system.
    Type: Grant
    Filed: April 13, 2007
    Date of Patent: August 2, 2011
    Assignee: International Business Machines Corporation
    Inventors: Robert Joseph Bestgen, Michael S. Faunce, Wei Hu, Shantan Kethireddy, Andrew Peter Passe, Ulrich Thiemann
  • Patent number: 7958158
    Abstract: Embodiments of the invention provide techniques for aggregating database queries for energy efficiency. In one embodiment, queries received by a DBMS are aggregated and staged according to hard-disk drives required for query execution. Each group of queries accessing a given drive may be dispatched for execution together. Further, the queries received by a DBMS may be matched to patterns of previously received queries. The matching patterns may be used to predict other queries which are likely to be received by the DBMS. The received queries may be staged to be dispatched with the predicted queries. By aggregating queries to be executed, access to each hard-disk drive may be optimized, thus reducing the overall energy consumption required for executing the queries.
    Type: Grant
    Filed: June 19, 2008
    Date of Patent: June 7, 2011
    Assignee: International Business Machines Corporation
    Inventors: Robert Joseph Bestgen, Wei Hu, Shantan Kethireddy, Andrew Peter Passe, Ulrich Thiemann
  • Publication number: 20110022585
    Abstract: An apparatus and method for a multi-partition query governor in a partitioned computer database system. In preferred embodiments a query governor uses data of a query governor file that is associated with multiple partitions to determine how the query governor manages access to the database across multiple partitions. Also, in preferred embodiments, the query governor in a local partition that receives a query request communicates with a query governor in a target partition to accumulate the total resource demands of the query on the local and target partitions. In preferred embodiments, a query governor estimates whether resources to execute a query will exceed a threshold over all or a combination of database partitions.
    Type: Application
    Filed: September 28, 2010
    Publication date: January 27, 2011
    Applicant: INTERNATIONAL BUSINESS MACHINES CORP.
    Inventors: Eric Lawrence Barsness, Robert Joseph Bestgen, John Matthew Santosuosso
  • Patent number: 7853584
    Abstract: An apparatus and method for a multi-partition query governor in a partitioned computer database system. In preferred embodiments a query governor uses data of a query governor file that is associated with multiple partitions to determines how the query governor manages access to the database across multiple partitions. Also, in preferred embodiments, the query governor in a local partition that receives a query request communicates with a query governor in a target partition to accumulate the total resource demands of the query on the local and target partitions. In preferred embodiments, a query governor estimates whether resources to execute a query will exceed a threshold over all or a combination of database partitions.
    Type: Grant
    Filed: December 5, 2006
    Date of Patent: December 14, 2010
    Assignee: International Business Machines Corporation
    Inventors: Eric Lawrence Barsness, Robert Joseph Bestgen, John Matthew Santosuosso
  • Patent number: 7831569
    Abstract: A method, apparatus, and program product are provided for preserving a query plan cache on a backup system having a dataspace containing a copy of data and a copy of a query plan cache from a production system. An update is initiated of at least a portion of the copy of the data on the backup system with a portion of the data on the production system. A merge is initiated of updated query plans in the query plan cache from the production system with corresponding query plans in the copy of the query plan cache on the backup system. Objects are correlated in the updated query plans in the copy of the query plan cache with the updated copy of the data on the backup system.
    Type: Grant
    Filed: October 10, 2007
    Date of Patent: November 9, 2010
    Assignee: International Business Machines Corporation
    Inventors: Robert Joseph Bestgen, Shantan Kethireddy, John Matthew Santosuosso
  • Patent number: 7743052
    Abstract: A database management system maintains a record of queries which can be executed against the database. For a given auxiliary database structure, an advisory function automatically reviews the query record and identifies those queries which might execute with greater efficiency using the auxiliary database structure, presenting analytical information to the user. Preferably, the auxiliary database structure is an index, and the information is used for determining whether to include the index in the database definition. Preferably, a query optimizer records potentially useful indexes when considering multiple alternative database optimizations, and this information is later retrieved to identify queries which would benefit from an index.
    Type: Grant
    Filed: February 14, 2006
    Date of Patent: June 22, 2010
    Assignee: International Business Machines Corporation
    Inventors: Robert Joseph Bestgen, James Michael Flanagan, Michael Donald Pfeifer
  • Patent number: 7734615
    Abstract: A method, apparatus, system, and signal-bearing medium that, in an embodiment, determine performance data for query optimization of a query directed to a database table having multiple partitions. The performance data for the query optimization is presented in a user interface, and an option is provided in the user interface to create a non-spanning index for any of the partitions mentioned in the performance data.
    Type: Grant
    Filed: May 26, 2005
    Date of Patent: June 8, 2010
    Assignee: International Business Machines Corporation
    Inventors: Mark John Anderson, Robert Joseph Bestgen, Shantan Kethireddy, Jeffrey Wayne Tenner