Patents by Inventor Thomas A. Beavin

Thomas A. Beavin 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: 20150220596
    Abstract: Embodiments presented herein provide techniques for setting different methods of skipping duplicate values when executing a query statement in a relational database. A distance between a two distinct keys in an index, a current index key and a next distinct index key, are estimated. Based on the estimated distance, an appropriate duplicate-skipping method is determined. If the proximity between the distinct keys is relatively far apart (e.g., the keys reside in index pages that are at least an index page apart), then a “big skip” method is performed. Otherwise, if the proximity between the distinct keys is relatively near (e.g., the keys reside in the same index page), then a “little skip” method is performed.
    Type: Application
    Filed: December 1, 2014
    Publication date: August 6, 2015
    Inventors: Terence P. PURCELL, Thomas A. BEAVIN, Li XIA, Michael R. SHADDUCK, Paramesh S. DESAI, Qianyang YU
  • Publication number: 20150220595
    Abstract: Embodiments presented herein provide techniques for setting different methods of skipping duplicate values when executing a query statement in a relational database. A distance between a two distinct keys in an index, a current index key and a next distinct index key, are estimated. Based on the estimated distance, an appropriate duplicate-skipping method is determined. If the proximity between the distinct keys is relatively far apart (e.g., the keys reside in index pages that are at least an index page apart), then a “big skip” method is performed. Otherwise, if the proximity between the distinct keys is relatively near (e.g., the keys reside in the same index page), then a “little skip” method is performed.
    Type: Application
    Filed: January 31, 2014
    Publication date: August 6, 2015
    Applicant: International Business Machines Corporation
    Inventors: Terence P. PURCELL, Thomas A. BEAVIN, Li XIA, Michael R. SHADDUCK, Paramesh S. DESAI, Qianyang YU
  • Publication number: 20150074134
    Abstract: System, method, and computer program product to modify a received query, the received query including a first predicate specifying a comparison operator and a second predicate specifying an IS NULL operator, by replacing the comparison operator of the first predicate with an extended comparison operator, and removing the IS NULL operator from the received query, the extended comparison operator configured to support searching of NULL values in a database management system (DBMS), wherein the extended comparison operator is configured to return rows having column data matching a value predefined to represent NULL values.
    Type: Application
    Filed: September 10, 2013
    Publication date: March 12, 2015
    Inventors: Thomas A. Beavin, Mengchu Cai, Dengfeng Gao, Jae H. Lee, Li-Mey Lee, Terence P. Purcell, Shengxi Suo
  • Publication number: 20150074135
    Abstract: System, method, and computer program product to modify a received query, the received query including a first predicate specifying a comparison operator and a second predicate specifying an IS NULL operator, by replacing the comparison operator of the first predicate with an extended comparison operator, and removing the IS NULL operator from the received query, the extended comparison operator configured to support searching of NULL values in a database management system (DBMS), wherein the extended comparison operator is configured to return rows having column data matching a value predefined to represent NULL values.
    Type: Application
    Filed: June 25, 2014
    Publication date: March 12, 2015
    Inventors: Thomas A. BEAVIN, Mengchu CAI, Dengfeng GAO, Jae H. LEE, Li-Mey LEE, Terence P. PURCELL, Shengxi SUO
  • Patent number: 8930410
    Abstract: According to one embodiment of the present invention, a system processes a database query, and comprises a computer system including at least one processor. The system identifies one or more expressions within the database query utilizing a database object with value masking. Masking requirements are determined for each identified expression and the database object utilized by that identified expression is replicated to provide masked and actual versions of that database object in response to the masking requirements for that expression including masked values and actual values of that database object. The value masking of the database object is applied to the identified expressions within the database query based on the determined masking requirements to produce search results with masked values for the database query. Embodiments of the present invention further include a method and computer program product for processing a database query in substantially the same manner described above.
    Type: Grant
    Filed: October 3, 2011
    Date of Patent: January 6, 2015
    Assignee: International Business Machines Corporation
    Inventors: Eric L. Alton, Thomas A. Beavin, Harley W. Boughton, Yao-Ching S. Chen, Curt L. Cotner, Yuping Ding, Dengfeng Gao, Gerald G. Kiernan, Xun Li, Irene C. Liu, Walid Rjaibi, Gregory R. Stager, Joyce A. Taylor, Timothy J. Vincent, Liyan 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: 8666969
    Abstract: Various aspects of this disclosure are directed to receiving, by a computing device, a first table join query that may include a first group of table identifiers that identify the two or more tables. The computing device may determine whether the first table join query includes an outer join command. When the first table join query includes the outer join command, the computing device may compare the first group of table identifiers and a second group of table identifiers of one or more pre-joined tables to determine whether each of the first table identifiers matches at least one of the second group of table identifiers. The computing device may further determine whether a predicate associated with each table identifier matches a predicate associated with a matching second table identifier. When each of the predicates match, the computing device may rewrite the first table join query.
    Type: Grant
    Filed: November 14, 2011
    Date of Patent: March 4, 2014
    Assignee: International Business Machines Corporation
    Inventors: Thomas A. Beavin, Mengchu Cai, Ruiping Li, James A. Ruddy
  • Publication number: 20130124500
    Abstract: Various aspects of this disclosure are directed to receiving, by a computing device, a first table join query that may include a first group of table identifiers that identify the two or more tables. The computing device may determine whether the first table join query includes an outer join command. When the first table join query includes the outer join command, the computing device may compare the first group of table identifiers and a second group of table identifiers of one or more pre-joined tables to determine whether each of the first table identifiers matches at least one of the second group of table identifiers. The computing device may further determine whether a predicate associated with each table identifier matches a predicate associated with a matching second table identifier. When each of the predicates match, the computing device may rewrite the first table join query.
    Type: Application
    Filed: November 14, 2011
    Publication date: May 16, 2013
    Applicant: International Business Machines Corporation
    Inventors: Thomas A. Beavin, Mengchu Cai, Ruiping Li, James A. Ruddy
  • Publication number: 20130086088
    Abstract: According to one embodiment of the present invention, a system processes a database query, and comprises a computer system including at least one processor. The system identifies one or more expressions within the database query utilizing a database object with value masking. Masking requirements are determined for each identified expression and the database object utilized by that identified expression is replicated to provide masked and actual versions of that database object in response to the masking requirements for that expression including masked values and actual values of that database object. The value masking of the database object is applied to the identified expressions within the database query based on the determined masking requirements to produce search results with masked values for the database query. Embodiments of the present invention further include a method and computer program product for processing a database query in substantially the same manner described above.
    Type: Application
    Filed: October 3, 2011
    Publication date: April 4, 2013
    Applicant: International Business Machines Corporation
    Inventors: Eric L. Alton, Thomas A. Beavin, Harley W. Boughton, Yao-Ching S. Chen, Curt L. Cotner, Yuping Ding, Dengfeng Gao, Gerald G. Kiernan, Xun Li, Irene C. Liu, Walid Rjaibi, Gregory R. Stager, Joyce A. Taylor, Timothy J. Vincent, Liyan Zhou
  • 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
  • Publication number: 20100114868
    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: Application
    Filed: October 21, 2008
    Publication date: May 6, 2010
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Thomas A. Beavin, Patrick D. Bossman, You-Chin Fuh, Adarsh R. Pannu, Terence P. Purcell
  • Publication number: 20090063397
    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: Application
    Filed: August 31, 2007
    Publication date: March 5, 2009
    Inventors: THOMAS A. BEAVIN, Patrick D. Bossman, John J. Campbell, You-Chin Fuh, Terence P. Purcell
  • Publication number: 20090063458
    Abstract: A method for minimizing the sorting of data comprises retrieving a database having an index of entries arranged according to a first, second, and third data entries. Additionally, partitioning the index of entries into a first partially-ordered list, wherein the first partially-ordered list comprises information arranged in the form of the first, second, and third data entries. The first partially-ordered list share the same first data entry. Furthermore, partitioning the index of entries into a second partially-ordered list, wherein the second partially-ordered list comprises information arranged in the form of first data entry, second data entry, third data entry. The first data entry within the second partially-ordered list is not the same as the first data entry in the first partially-ordered list. Additionally, querying the first partially-ordered list without querying the second partially-ordered list according to a set of query instructions.
    Type: Application
    Filed: August 31, 2007
    Publication date: March 5, 2009
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Thomas A. BEAVIN, Terence Patrick PURCELL
  • Publication number: 20080155641
    Abstract: A method and system for managing a computer system are described. The method and system include defining and storing a policy using a policy manager. In one aspect, the policy manager also activates and resolves conflicts between policies. The policy is a declarative statement of a directive to be carried out by the computer system. The method and system also include using a policy executor to determine whether a request to the computer system is covered by the policy. The method and system further include utilizing the computer system to carry out the directive for the policy if the request is covered by the policy through a policy enforcer.
    Type: Application
    Filed: December 20, 2006
    Publication date: June 26, 2008
    Applicant: International Business Machines Corporation
    Inventors: Thomas A. Beavin, Baoqiu Cui, You-Chin Fuh, William Y. Kyu, Adarsh R. Pannu, Lin Qiao, Basuki N. Soetarman
  • Patent number: 7299225
    Abstract: A method, apparatus, and article of manufacture for improving the performance of evaluating predicates with non-matching operands by aggressively casting the input value to the data type of the target column before the data of the target column is accessed.
    Type: Grant
    Filed: November 26, 2002
    Date of Patent: November 20, 2007
    Assignee: International Business Machines Corporation
    Inventors: Brian T. Tran, Hsiuying Y. Cheng, Shuanglin Guo, Patrick M. Malone, Thomas A. Beavin, Xiazhen Wang, Xun Li
  • Publication number: 20070078813
    Abstract: Methods, computer programs and system for executing a query on data that has been partitioned into a plurality of partitions are provided. The method includes providing partitioned data including one or more columns and the plurality of partitions. The partitioned data includes a limit key value associated with each column for a given partition. The method further includes receiving a query including a predicate on one of the one or more columns of the partitioned data; and utilizing the predicate on the one of the one or more columns in a pruning decision on at least one of the one or more partitions based on the limit key values associated with the plurality of partitions.
    Type: Application
    Filed: October 4, 2005
    Publication date: April 5, 2007
    Applicant: International Business Machines Corporation
    Inventors: Thomas Beavin, Sauraj Goswami, Terence Purcell
  • Publication number: 20060287979
    Abstract: Techniques are provided that determine that a query includes at least one subquery that may be correlated or decorrelated. An internal representation of the query that represents the subquery in both correlated and decorrelated form is generated, wherein the internal representation includes at least one virtual table.
    Type: Application
    Filed: June 17, 2005
    Publication date: December 21, 2006
    Inventors: Thomas Beavin, Mengchu Cai, Yao-Ching Chen, Hsiuying Cheng, Fen-Ling Lin, Irene Liu, Jerry Mukai, Demai Ni, Yoichi Tsuji, Li Xia, Ying Zeng
  • Publication number: 20060173833
    Abstract: Processing non-Boolean term conditions in database queries. A query that is a request for data in a database is received and includes at least one uneven non-Boolean term condition that spans multiple tables in the database. The non-Boolean term condition is split into separate portions, each of the portions providing a Boolean term that can be satisfied by accessing one table in the database. The separate portions are executed independently to find at least one data result in the database that satisfies the Boolean term of each separate portion, and the data result from each separate portion are combined into a final result that satisfies the query.
    Type: Application
    Filed: January 28, 2005
    Publication date: August 3, 2006
    Inventors: Terence Purcell, Thomas Beavin