Patents by Inventor Robert J. Bestgen
Robert J. 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).
-
Publication number: 20120185935Abstract: A method, system and computer program product are provided for implementing automatic access control list validation using automatic categorization of unstructured text. Automatic categorization of unstructured text is performed on a plurality of documents of an access control list for determining an average term vector. Each of the documents is scored against the average term vector to identify a dissimilar document, flagged as a possible security risk. Automatic categorization of unstructured text is performed on user information of a plurality of members of a candidate access control list for determining a typical term vector. A similarity score is determined by user information and the typical term vector, members of an access control list that are dissimilar from other members of the access control list are identified.Type: ApplicationFiled: January 17, 2011Publication date: July 19, 2012Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Robert J. Bestgen, Nicholas T. Lawrence, Jian Li, Dag O. Roppe, Xing Xing Shen, Yi Yuan
-
Publication number: 20120179712Abstract: A method, apparatus, and program product are provided for creating an Encoded Matrix Index for a column in a database table. An element of the column for all rows in the database table is compared to a corresponding reference value in a reference data structure, and in response to at least one value for the element of the column not matching the reference value, indicating a variation in a variation data structure and creating a value data structure. Queries executed using the Encoded Matrix Index include terms associated with a sub-column defined in a column of a database table. The variation data structure is accessed to determine whether any variation exists between rows belonging to a sub-column of the database table. If no variation exists, a value is accessed from the reference data structure; otherwise, a value for each row of the sub-column is accessed from a value data structure.Type: ApplicationFiled: March 16, 2012Publication date: July 12, 2012Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Robert J. Bestgen, Thomas J. Eggebraaten, Jeffrey W. Tenner
-
Patent number: 8214807Abstract: Methods, systems, and products are provided for code path tracking. Embodiments include identifying an instrumented trace point in software code to be path tracked; identifying a function executed at the instrumented trace point in the software code; identifying parameters for the function executed at the instrumented trace point; and recording a description of the function, the parameters, and the result of the execution of the function using the parameters.Type: GrantFiled: January 10, 2007Date of Patent: July 3, 2012Assignee: International Business Machines CorporationInventors: Robert J. Bestgen, Robert D. Driesch, Jr., Wei Hu, Shantan Kethireddy, Edward J. Miller, Andrew P. Passe, Ulrich Thiemann
-
Publication number: 20120158698Abstract: In an embodiment, a first driver source specified by a first execution plan that implements a query is designated, and a second driver source specified by a second execution plan that implements the query is designated. A portion of the first execution plan and a portion of the second execution plan are executed. If a unique identifier of a first row returned by the executing the portion of the first execution plan does not match all unique identifiers of all rows from the second driver source that were saved to a result set by the executing the portion of the second execution plan, then the first row returned by the executing the portion of the first execution plan is added to the result set and the unique identifier of the first row that was returned by the executing the portion of the first execution plan is added to a unique identifier log.Type: ApplicationFiled: December 21, 2010Publication date: June 21, 2012Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Robert J. Bestgen, Robert V. Downer, Brian R. Muras
-
Publication number: 20120072412Abstract: In an embodiment an execution plan for a query is created. A wakeup threshold is set proportional to an amount of time taken by the creation of the execution plan. In various embodiments, the wakeup threshold is increased by a percentage equal to one minus a percentage of free resources at a computer system, is increased inversely proportional to an amount of execution time of a previous execution of the execution plan, or is decreased proportional to a number of times the execution plan was executed. A portion of the execution plan is executed to produce a portion of rows in a result set until the wakeup threshold expires. After the wakeup threshold expires, changes to the execution plan are evaluated.Type: ApplicationFiled: September 20, 2010Publication date: March 22, 2012Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Robert J. Bestgen, Robert V. Downer, Brian R. Muras
-
Patent number: 8037059Abstract: A process combines multiple grouping sets into single rollup sets with depth lists defining the levels of grouping that must be performed. Grouping sets are identified that are contained within other sets and combined into single rollups with depth lists. Cube aggregation conversion to rollup aggregation is provided for optimizing database query processing. Natural sets of rollup hierarchies within a cube are recognized and the cube is converted into those rollup hierarchies. Once converted, the rollup aggregation is performed to significantly reduce required processing.Type: GrantFiled: May 1, 2008Date of Patent: October 11, 2011Assignee: International Business Machines CorporationInventors: Robert J. Bestgen, David G. Carlson, Robert V. Downer, Shantan Kethireddy
-
Publication number: 20110137890Abstract: In an embodiment, a portion of the execution plan is executed to produce a portion of records in a partial result set. If a first join of a table is performed that eliminates more than a first threshold number of records from the partial result set, a determination is made whether an estimated cost of a forced primary join is less than an estimated cost of a star join. If the estimated cost of the forced primary join is less than the estimated cost of the star join, then the table is moved first in a join order in the execution plan, the portion of the records in the partial result set is discarded, and the execution is re-started with a different portion of the execution plan to produce a different portion of the records.Type: ApplicationFiled: December 4, 2009Publication date: June 9, 2011Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Robert J. Bestgen, Robert V. Downer, Brian R. Muras
-
Patent number: 7941426Abstract: Techniques for optimizing database queries for energy efficiency. A query optimizer is configured to compare energy requirements of query plans, and to select a query plan requiring minimal energy to execute. The query optimizer may also compare time performance of the query plans, and may select a query plan by matching to a user preference for a relative priority between energy requirements and time performance.Type: GrantFiled: May 8, 2008Date of Patent: May 10, 2011Assignee: International Business Machines CorporationInventors: Robert J. Bestgen, Wei Hu, Shantan Kethireddy, Andrew P. Passe, Ulrich Thiemann
-
Patent number: 7937385Abstract: A plan for executing a query in a relational database is obtained. A query for accessing data in the relational database is received. The query specifies N tables in the relational database from which data is to be retrieved. A determination is made whether a syntax of the query matches a syntax of a plan in a plan cache for executing the query. Matches are identified between generic table formats of the N tables specified in the query to generic table formats of N tables specified in the plan responsive to the syntax of the query matching the syntax of a plan in the plan cache for executing the query. The plan for executing the query is obtained based on whether the syntax of the query matches the syntax of the plan and based on identified matches between the generic table formats of the N tables specified in the query to the generic table formats of the N tables specified in the plan.Type: GrantFiled: May 5, 2008Date of Patent: May 3, 2011Assignee: International Business Machines CorporationInventors: Robert J. Bestgen, Wei Hu, Shantan Kethireddy, Andrew P. Passe, Ulrich Thiemann
-
Publication number: 20090313210Abstract: A method, apparatus, and program product are provided for creating an Encoded Matrix Index for a column in a database table. An element of the column for all rows in the database table is compared to a corresponding reference value in a reference data structure, and in response to at least one value for the element of the column not matching the reference value, indicating a variation in a variation data structure and creating a value data structure. Queries executed using the Encoded Matrix Index include terms associated with a sub-column defined in a column of a database table. The variation data structure is accessed to determine whether any variation exists between rows belonging to a sub-column of the database table. If no variation exists, a value is accessed from the reference data structure; otherwise, a value for each row of the sub-column is accessed from a value data structure.Type: ApplicationFiled: June 17, 2008Publication date: December 17, 2009Inventors: Robert J. Bestgen, Thomas J. Eggebraaten, Jeffrey W. Tenner
-
Publication number: 20090282272Abstract: Embodiments of the invention provide techniques for optimizing database queries for energy efficiency. In general, a query optimizer is configured to compare energy requirements of query plans, and to select a query plan requiring minimal energy to execute. In one embodiment, the query optimizer may also compare time performance of the query plans, and may select a query plan by matching to a user preference for a relative priority between energy requirements and time performance.Type: ApplicationFiled: May 8, 2008Publication date: November 12, 2009Inventors: Robert J. Bestgen, Wei Hu, Shantan Kethireddy, Andrew P. Passe, Ulrich Thiemann
-
Publication number: 20090281986Abstract: Embodiments of the invention provide techniques for optimizing database queries for energy efficiency. In general, a query optimizer is configured to compare energy requirements of query plans, and to select a query plan requiring minimal energy to execute. In one embodiment, the query optimizer may also compare time performance of the query plans, and may select a query plan by matching to a user preference for a relative priority between energy requirements and time performance.Type: ApplicationFiled: May 8, 2008Publication date: November 12, 2009Inventors: Robert J. Bestgen, Wei Hu, Shantan Kethireddy, Andrew P. Passe, Ulrich Thiemann
-
Publication number: 20090281992Abstract: Embodiments of the invention provide techniques for optimizing database queries for energy efficiency. In general, a query optimizer is configured to compare energy requirements of query plans, and to select a query plan requiring minimal energy to execute. In one embodiment, the query optimizer may also compare time performance of the query plans, and may select a query plan by matching to a user preference for a relative priority between energy requirements and time performance.Type: ApplicationFiled: May 8, 2008Publication date: November 12, 2009Inventors: Robert J. Bestgen, Wei Hu, Shantan Kethireddy, Andrew P. Passe, Ulrich Thiemann
-
Publication number: 20090276394Abstract: A plan for executing a query in a relational database is obtained. A query for accessing data in the relational database is received. The query specifies N tables in the relational database from which data is to be retrieved. A determination is made whether a syntax of the query matches a syntax of a plan in a plan cache for executing the query. Matches are identified between generic table formats of the N tables specified in the query to generic table formats of N tables specified in the plan responsive to the syntax of the query matching the syntax of a plan in the plan cache for executing the query. The plan for executing the query is obtained based on whether the syntax of the query matches the syntax of the plan and based on identified matches between the generic table formats of the N tables specified in the query to the generic table formats of the N tables specified in the plan.Type: ApplicationFiled: May 5, 2008Publication date: November 5, 2009Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Robert J. Bestgen, Wei Hu, Shantan Kethireddy, Andrew P. Passe, Ulrich Thiemann
-
Publication number: 20090276393Abstract: A process combines multiple grouping sets into single rollup sets with depth lists defining the levels of grouping that must be performed. Grouping sets are identified that are contained within other sets and combined into single rollups with depth lists. Cube aggregation conversion to rollup aggregation is provided for optimizing database query processing. Natural sets of rollup hierarchies within a cube are recognized and the cube is converted into those rollup hierarchies. Once converted, the rollup aggregation is performed to significantly reduce required processing.Type: ApplicationFiled: May 1, 2008Publication date: November 5, 2009Inventors: Robert J. Bestgen, David G. Carlson, Robert V. Downer, Shantan Kethireddy
-
Publication number: 20090271360Abstract: Methods, systems, and computer program products are provided for improving the processing of database queries. Some embodiments include generating volatility scores for various plans for executing similar database queries. Different embodiments may utilize: database statistics, the variable values being selected for, and/or historical run time data, to generate the plan volatility scores. In some embodiments, the volatility scores are used to determine whether to generate a new plan for a query, whether to prune an existing plan, and/or how many different plans to store for a query.Type: ApplicationFiled: April 25, 2008Publication date: October 29, 2009Inventors: Robert J. Bestgen, Shantan Kethireddy
-
Publication number: 20080183684Abstract: Methods, apparatus, and products are disclosed for caching an access plan for a query that include: receiving, in a SQL module of a DBMS, a SQL query that specifies data for retrieval from a database, the database characterized by database statistics, the SQL query characterized by one or more host variable values; generating, by the SQL module, an access plan in dependence upon the SQL query; calculating, by the SQL module, a routing code for the SQL query in dependence upon the host variable values of the SQL query and a portion of the database statistics; and storing, by the SQL module, the access plan in an access plan cache, including associating with the access plan the routing code for the SQL query and the portion of the database statistics used to calculate the routing code.Type: ApplicationFiled: January 26, 2007Publication date: July 31, 2008Inventors: Robert J. Bestgen, Michael S. Faunce, Wei Hu, Shantan Kethireddy, Andrew P. Passe, Ulrich Thiemann
-
Publication number: 20080168427Abstract: Methods, systems, and products are provided for code path tracking. Embodiments include identifying an instrumented trace point in software code to be path tracked; identifying a function executed at the instrumented trace point in the software code; identifying parameters for the function executed at the instrumented trace point; and recording a description of the function, the parameters, and the result of the execution of the function using the parameters.Type: ApplicationFiled: January 10, 2007Publication date: July 10, 2008Inventors: Robert J. Bestgen, Robert D. Driesch, Wei Hu, Shantan Kethireddy, Edward J. Miller, Andrew P. Passe, Ulrich Thiemann
-
Publication number: 20080140622Abstract: Methods, apparatus, and products are disclosed for displaying explain data for a SQL query of a database that include: executing, by a SQL execution module, a SQL query in a database management system; accumulating, by the SQL execution module, actual run time data for the SQL query while executing the SQL query; and displaying, by an explain module, explain data for the SQL query while executing the SQL query, including displaying the accumulated actual run time data for the SQL query as part of the explain data for the SQL query.Type: ApplicationFiled: December 12, 2006Publication date: June 12, 2008Inventors: Robert J. Bestgen, Shantan Kethireddy, Michael D. Pfeifer