Patents by Inventor Patrick D. Bossman

Patrick D. Bossman 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: 10754858
    Abstract: An access plan including multiple indexes is selected for accessing data of a database system. A filtering status of each index within the selected access plan is determined based on information available at execution of the selected access plan. The order of the indexes within the selected access plan is modified based on the filtering status of the indexes, and the selected access plan is executed with the modified order of the indexes. The execution of the selected access plan is interrupted in response to accessing a threshold amount of data and the filtering of the indexes of the selected access plan is estimated. A processing order for the indexes is determined based on the estimated filtering. The execution of the selected access plan resumes based on the determined processing order.
    Type: Grant
    Filed: January 6, 2017
    Date of Patent: August 25, 2020
    Assignee: International Business Machines Corporation
    Inventors: Brian L. Baggett, Patrick D. Bossman, Shuanglin Guo, Andrei F. Lurie, Terence P. Purcell, Martina Simova
  • Patent number: 10545972
    Abstract: According to an embodiment of the present invention, methods, systems, and computer readable media are provided for collecting statistics for use in optimizing a database query. Collected statistics for the database are compared to corresponding predetermined states of conditions for optimizing the database query. One or more collected statistics in compliance with the corresponding predetermined states of conditions are identified based on the comparison. Collection of the one or more identified statistics for the query optimization is disabled.
    Type: Grant
    Filed: January 6, 2017
    Date of Patent: January 28, 2020
    Assignee: International Business Machines Corporation
    Inventors: Jason L. Alpers, Patrick D. Bossman, Terence P. Purcell
  • Patent number: 10459933
    Abstract: According to an embodiment of the present invention, methods, systems, and computer readable media are provided for collecting statistics for use in optimizing a database query. Collected statistics for the database are compared to corresponding predetermined states of conditions for optimizing the database query. One or more collected statistics in compliance with the corresponding predetermined states of conditions are identified based on the comparison. Collection of the one or more identified statistics for the query optimization is disabled.
    Type: Grant
    Filed: September 16, 2015
    Date of Patent: October 29, 2019
    Assignee: International Business Machines Corporation
    Inventors: Jason L. Alpers, Patrick D. Bossman, Terence P. Purcell
  • Patent number: 10380104
    Abstract: A database system searches for any statements that satisfy one or more of a set of filtering criteria. When a given dynamic query statement fully satisfies the set of filtering criteria, the given statement is stabilized by persistently storing a bound form of the given dynamic query statement. When the given dynamic query statement partly satisfies the set of filtering criteria, a monitoring request is created with the set of filtering criteria to begin monitoring subsequent executions of the statement, and the statement is linked to the monitoring request. When the given dynamic query statement subsequently fully satisfies the set of filtering criteria, the statement is stabilized by persistently storing the bound form of the statement. When the given dynamic query is re-executed, the stabilized statement is loaded, and the PREPARE process is bypassed.
    Type: Grant
    Filed: August 9, 2016
    Date of Patent: August 13, 2019
    Assignee: International Business Machines Corporation
    Inventors: Patrick D. Bossman, Frank D. Bower, Tammie Dang, Peter Kuang, Euna Park, Maryela E. Weihrauch
  • Patent number: 10210210
    Abstract: An access plan including multiple indexes is selected for accessing data of a database system. A filtering status of each index within the selected access plan is determined based on information available at execution of the selected access plan. The order of the indexes within the selected access plan is modified based on the filtering status of the indexes, and the selected access plan is executed with the modified order of the indexes. The execution of the selected access plan is interrupted in response to accessing a threshold amount of data and the filtering of the indexes of the selected access plan is estimated. A processing order for the indexes is determined based on the estimated filtering. The execution of the selected access plan resumes based on the determined processing order.
    Type: Grant
    Filed: October 21, 2015
    Date of Patent: February 19, 2019
    Assignee: International Business Machines Corporation
    Inventors: Brian L. Baggett, Patrick D. Bossman, Shuanglin Guo, Andrei F. Lurie, Terence P. Purcell, Martina Simova
  • Publication number: 20180046677
    Abstract: A database system searches for any statements that satisfy one or more of a set of filtering criteria. When a given dynamic query statement fully satisfies the set of filtering criteria, the given statement is stabilized by persistently storing a bound form of the given dynamic query statement. When the given dynamic query statement partly satisfies the set of filtering criteria, a monitoring request is created with the set of filtering criteria to begin monitoring subsequent executions of the statement, and the statement is linked to the monitoring request. When the given dynamic query statement subsequently fully satisfies the set of filtering criteria, the statement is stabilized by persistently storing the bound form of the statement. When the given dynamic query is re-executed, the stabilized statement is loaded, and the PREPARE process is bypassed.
    Type: Application
    Filed: August 9, 2016
    Publication date: February 15, 2018
    Inventors: Patrick D. BOSSMAN, Frank D. BOWER, Tammie DANG, Peter KUANG, Euna PARK, Maryela E. WEIHRAUCH
  • Publication number: 20170249360
    Abstract: A query optimizer receives a relational database management system (RDBMS) query having a join predicate with a join between a first and a second table. The query optimizer determines a high skew value for a first variable joining the first and second tables at columns per the join predicate. A count query on one of the first and second tables is constructed and run only using the high skew value as a substitution for the first variable. A quantity of records for the join of the first and second tables is estimated using results of the count query. Different access paths (e.g., query plans) are used by the query optimizer depending on whether the estimated quantity of records exceeds a previously determined threshold or not.
    Type: Application
    Filed: February 26, 2016
    Publication date: August 31, 2017
    Inventors: JASON L. ALPERS, TERENCE P. PURCELL, Patrick D. Bossman
  • Publication number: 20170116264
    Abstract: An access plan including multiple indexes is selected for accessing data of a database system. A filtering status of each index within the selected access plan is determined based on information available at execution of the selected access plan. The order of the indexes within the selected access plan is modified based on the filtering status of the indexes, and the selected access plan is executed with the modified order of the indexes. The execution of the selected access plan is interrupted in response to accessing a threshold amount of data and the filtering of the indexes of the selected access plan is estimated. A processing order for the indexes is determined based on the estimated filtering. The execution of the selected access plan resumes based on the determined processing order.
    Type: Application
    Filed: January 6, 2017
    Publication date: April 27, 2017
    Inventors: Brian L. Baggett, Patrick D. Bossman, Shuanglin Guo, Andrei F. Lurie, Terence P. Purcell, Martina Simova
  • Publication number: 20170116288
    Abstract: According to an embodiment of the present invention, methods, systems, and computer readable media are provided for collecting statistics for use in optimizing a database query. Collected statistics for the database are compared to corresponding predetermined states of conditions for optimizing the database query. One or more collected statistics in compliance with the corresponding predetermined states of conditions are identified based on the comparison. Collection of the one or more identified statistics for the query optimization is disabled.
    Type: Application
    Filed: January 6, 2017
    Publication date: April 27, 2017
    Inventors: Jason L. Alpers, Patrick D. Bossman, Terence P. Purcell
  • Publication number: 20170116275
    Abstract: An access plan including multiple indexes is selected for accessing data of a database system. A filtering status of each index within the selected access plan is determined based on information available at execution of the selected access plan. The order of the indexes within the selected access plan is modified based on the filtering status of the indexes, and the selected access plan is executed with the modified order of the indexes. The execution of the selected access plan is interrupted in response to accessing a threshold amount of data and the filtering of the indexes of the selected access plan is estimated. A processing order for the indexes is determined based on the estimated filtering. The execution of the selected access plan resumes based on the determined processing order.
    Type: Application
    Filed: October 21, 2015
    Publication date: April 27, 2017
    Inventors: Brian L. Baggett, Patrick D. Bossman, Shuanglin Guo, Andrei F. Lurie, Terence P. Purcell, Martina Simova
  • Publication number: 20170075954
    Abstract: According to an embodiment of the present invention, methods, systems, and computer readable media are provided for collecting statistics for use in optimizing a database query. Collected statistics for the database are compared to corresponding predetermined states of conditions for optimizing the database query. One or more collected statistics in compliance with the corresponding predetermined states of conditions are identified based on the comparison. Collection of the one or more identified statistics for the query optimization is disabled.
    Type: Application
    Filed: September 16, 2015
    Publication date: March 16, 2017
    Inventors: Jason L. Alpers, Patrick D. Bossman, Terence P. Purcell
  • Patent number: 9256643
    Abstract: A technique for factoring uncertainty into cost-based query optimization includes: determining the degree of uncertainty involved in the cost estimates for the query, determining the degree of sensitivity the query has to that uncertainty, and determining if there is an access path that performs well across the range of possible conditions that could occur at execution time, reducing the risk of performance spikes and performance volatility. If such an access path exists, select that access path; if not, perform parametric query optimization or query re-optimization.
    Type: Grant
    Filed: March 27, 2014
    Date of Patent: February 9, 2016
    Assignee: International Business Machines Corporation
    Inventors: Jason L. Alpers, Thomas A. Beavin, Patrick D. Bossman, Shuanglin Guo, Terence P. Purcell
  • Patent number: 9208198
    Abstract: A technique for factoring uncertainty into cost-based query optimization includes: determining the degree of uncertainty involved in the cost estimates for the query, determining the degree of sensitivity the query has to that uncertainty, and determining if there is an access path that performs well across the range of possible conditions that could occur at execution time, reducing the risk of performance spikes and performance volatility. If such an access path exists, select that access path; if not, perform parametric query optimization or query re-optimization.
    Type: Grant
    Filed: October 17, 2012
    Date of Patent: December 8, 2015
    Assignee: International Business Machines Corporation
    Inventors: Jason L. Alpers, Thomas A. Beavin, Patrick D. Bossman, Shuanglin Guo, Terence P. Purcell
  • Patent number: 9063973
    Abstract: Apparatuses and methods for optimizing access path are provided. Execution of a query statement is sampled to obtain the information about a plurality of executing instances, the information about each executing instance comprises the literal value of the query statement in the instance and the filter factor corresponding to the literal value. The plurality of instances are grouped into a plurality of groups based on the filter factors corresponding to the literal values. The average filter factor of each group and the occurrence frequency of the group are obtained. The candidate access path created for the average filter factor of each group is accordingly obtained, and by taking the occurrence frequencies as weights, the weighted execution cost of each candidate access path is calculated for each group. The candidate access path with the minimum sum of the weighted execution costs for all groups is determined as the optimal access path.
    Type: Grant
    Filed: December 20, 2012
    Date of Patent: June 23, 2015
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Patrick D. Bossman, You-Chin Fuh, Ke W. Wei, Jing Zhou, Xiang Zhou
  • Publication number: 20140214797
    Abstract: A technique for factoring uncertainty into cost-based query optimization includes: determining the degree of uncertainty involved in the cost estimates for the query, determining the degree of sensitivity the query has to that uncertainty, and determining if there is an access path that performs well across the range of possible conditions that could occur at execution time, reducing the risk of performance spikes and performance volatility. If such an access path exists, select that access path; if not, perform parametric query optimization or query re-optimization.
    Type: Application
    Filed: March 27, 2014
    Publication date: July 31, 2014
    Applicant: International Business Machines Corporation
    Inventors: Jason L. Alpers, Thomas A. Beavin, Patrick D. Bossman, Shuanglin Guo, Terence P. Purcell
  • Publication number: 20140108378
    Abstract: A technique for factoring uncertainty into cost-based query optimization includes: determining the degree of uncertainty involved in the cost estimates for the query, determining the degree of sensitivity the query has to that uncertainty, and determining if there is an access path that performs well across the range of possible conditions that could occur at execution time, reducing the risk of performance spikes and performance volatility. If such an access path exists, select that access path; if not, perform parametric query optimization or query re-optimization.
    Type: Application
    Filed: October 17, 2012
    Publication date: April 17, 2014
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Jason L. Alpers, Thomas A. Beavin, Patrick D. Bossman, Shuanglin Guo, Terence P. Purcell
  • Patent number: 8645356
    Abstract: An adaptive query execution plan enhancement is provided by: selecting a sample of literal sets from an execution history of a query statement; determining a plurality of access paths by applying each literal set in the sample to the query statement; for each given access path of the plurality of access paths, determining a total execution cost by applying each literal set in the sample to the given access path; and selecting a preferred access path from the plurality of access paths based on the total execution costs for each given access path. A plurality of preferred access paths for a plurality of query statements in an application workload is collected and may be presented as a query execution plan enhancement recommendation to users.
    Type: Grant
    Filed: March 28, 2012
    Date of Patent: February 4, 2014
    Assignee: International Business Machines Corporation
    Inventors: Patrick D Bossman, Curt L. Cotner, You-Chin Fuh, Adarsh R. Pannu, Kun Peng Ren
  • Publication number: 20130262435
    Abstract: An adaptive query execution plan enhancement is provided by: selecting a sample of literal sets from an execution history of a query statement; determining a plurality of access paths by applying each literal set in the sample to the query statement; for each given access path of the plurality of access paths, determining a total execution cost by applying each literal set in the sample to the given access path; and selecting a preferred access path from the plurality of access paths based on the total execution costs for each given access path. A plurality of preferred access paths for a plurality of query statements in an application workload is collected and may be presented as a query execution plan enhancement recommendation to users.
    Type: Application
    Filed: March 28, 2012
    Publication date: October 3, 2013
    Applicant: International Business Machines Corporation
    Inventors: Patrick D. BOSSMAN, Curt L. COTNER, You-Chin FUH, Adarsh S. PANNU, Kun Peng REN
  • Patent number: 8060495
    Abstract: An apparatus, system, and method are disclosed for improving query execution plan efficiency in a database management system. The present invention binds both static database queries and dynamic database queries to new query execution plans (QEPs) that produce the same result set as a former QEP bound to the database queries. Next, the present invention identifies one of the former QEPs and the new QEP as an active QEP and automatically collects execution statistics for one of the former QEPs and the new QEP. Finally, the present invention automatically selects one of the former QEPs and the new QEP as the active QEP in response to completion of the automatic collection of execution statistics, the active QEP selected such that the automatically selected QEP provides optimal execution performance based on performance criteria in comparison to the automatically unselected QEP, the active QEP selected based on the execution statistics.
    Type: Grant
    Filed: October 21, 2008
    Date of Patent: November 15, 2011
    Assignee: International Business Machines Corporation
    Inventors: Thomas A. Beavin, Patrick D. Bossman, You-Chin Fuh, Adarsh R. Pannu, Terence P. Purcell
  • Patent number: 7725448
    Abstract: A method for performing disjunctive single-index access on a database is disclosed. The method includes a query engine determining whether a first OR predicate and a second OR predicate map to a shared index. Responsive to the query engine determining that the first OR predicate and the second OR predicate map to the shared index, the first OR predicate and the second OR predicate are ordered in an ascending sequence. A first range of the first OR predicate is queued. A first row of the shared index is probed for the first range of the first OR predicate. Whether the first row is disqualified by the first OR predicate is determined. Responsive to determining that the first row is not disqualified by the first OR predicate, the row is reported in a result reporting structure.
    Type: Grant
    Filed: August 31, 2007
    Date of Patent: May 25, 2010
    Assignee: International Business Machines Corporation
    Inventors: Thomas A. Beavin, Patrick D. Bossman, John J. Campbell, You-Chin Fuh, Terence P. Purcell