Patents by Inventor Michael S. Faunce
Michael S. Faunce 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: 9009490Abstract: A method and controller for implementing dynamic banding of a storage device, such as a Self Encrypting Device (SED) in a data storage array, and a design structure on which the subject controller circuit resides are provided. The controller dynamically identifies band boundaries for the storage device at the time a data storage array is created, when one or more devices are added into an existing data storage array, and when a replacement device is rebuilt into an exposed array, or an array with a failed device. A storage device band definition is provided based upon the dynamically identified band boundaries for the storage device.Type: GrantFiled: October 8, 2012Date of Patent: April 14, 2015Assignee: International Business Machines CorporationInventors: Scott A. Bauman, Joseph R. Edwards, Michael S. Faunce, Robert E. Galbraith, David R. Kahler, Karl A. Nielsen, Michael T. Roble, Mark Yadlosky, Michael J. Anderson
-
Publication number: 20140101455Abstract: A method and controller for implementing dynamic banding of a storage device, such as a Self Encrypting Device (SED) in a data storage array, and a design structure on which the subject controller circuit resides are provided. The controller dynamically identifies band boundaries for the storage device at the time a data storage array is created, when one or more devices are added into an existing data storage array, and when a replacement device is rebuilt into an exposed array, or an array with a failed device. A storage device band definition is provided based upon the dynamically identified band boundaries for the storage device.Type: ApplicationFiled: October 8, 2012Publication date: April 10, 2014Applicant: International Business Machines CorporationInventors: Scott A. Bauman, Joseph R. Edwards, Michael S. Faunce, Robert E. Galbraith, David R. Kahler, Karl A. Nielsen, Michael T. Roble, Mark Yadlosky, Michael J. Anderson
-
Patent number: 8688682Abstract: Methods, systems, and computer program products are provided for query expression evaluation for query optimization. Embodiments include receiving a query including a plurality of predicates; creating a truth table representing the possible solutions to the query; identifying a plurality of intersections of the truth table, the plurality of intersections including each predicate of the query; assigning a selectivity factor to each predicate; determining in dependence upon the selectivity factors for each predicate a selectivity rating for each of the intersections of the truth table; selecting one or more of the intersections in dependence upon the selectivity rating; and determining in dependence upon the selected intersections a percentage of rows in a database table returned by the query; and providing the percentage of rows in the database table to an access plan generator for query optimization.Type: GrantFiled: March 23, 2007Date of Patent: April 1, 2014Assignee: International Business Machines CorporationInventors: Michael S. Faunce, Yasunobu Suginaka
-
Patent number: 8650179Abstract: A method generates at least one statistic for a temporary table during optimization of a database query before the temporary table is created. By doing so, optimization can proceed on a database query irrespective of the fact that the temporary table may not be materialized until the database query is ultimately executed.Type: GrantFiled: August 18, 2005Date of Patent: February 11, 2014Assignee: International Business Machines CorporationInventors: Robert Douglas Driesch, Jr., John Francis Edwards, Michael S. Faunce, Brian Robert Muras
-
Patent number: 8239406Abstract: A method, apparatus and program product are provided for representing a database query expression including a plurality of predicates related to one another by at least one logical relation. A list of operands is generated from the database query expression, where each operand is representative of a predicate. Each operand is mapped into an operand map. A data structure is generated based upon the generated list of operands, where the data structure includes a plurality of nodes. Each node includes an operand identifier that identifies at least one operand based upon the operand map. Each node defines a first logical relation between those predicates in the database query expression that are represented by operands identified by the operand identifier for such node. The nodes are arranged relative to one another in the data structure to define at least a second logical relation among predicates in the database query expression.Type: GrantFiled: December 31, 2008Date of Patent: August 7, 2012Assignee: International Business Machines CorporationInventors: Michael S. Faunce, Yasunobu Suginaka
-
Patent number: 7991763Abstract: 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: GrantFiled: April 13, 2007Date of Patent: August 2, 2011Assignee: International Business Machines CorporationInventors: Robert Joseph Bestgen, Michael S. Faunce, Wei Hu, Shantan Kethireddy, Andrew Peter Passe, Ulrich Thiemann
-
Patent number: 7987200Abstract: A database management system predicts a selectivity for database query conditions requiring a join of records from different tables. The system identifies at least one skewed value in a field specified in the join condition, and constructs, for each skewed value, a set of hypothetical query predicates in which the field specified in the join condition is replaced with a constant equal to the skewed value. The system then predicts the selectivity for the hypothetical predicates, using any appropriate prediction technique. The selectivities of the hypothetical predicates are used to predict a selectivity for the original query.Type: GrantFiled: October 31, 2007Date of Patent: July 26, 2011Assignee: International Business Machines CorporationInventors: Michael S. Faunce, Shantan Kethireddy, Brian Robert Muras
-
Patent number: 7949631Abstract: Building database statistics for use by a query optimizer is beneficial but may over utilize system resources. Accordingly, the frequency that statistics are rebuilt is controlled in order to minimize the effect of the system. In particular, the staleness of the data and the time since the last statistics collection are used to determine whether or not to re-collect statistics. Even for relatively stale data, statistics are not rebuilt until a predetermined time period has passed.Type: GrantFiled: January 27, 2005Date of Patent: May 24, 2011Assignee: International Business Machines CorporationInventors: Michael S. Faunce, Brian Robert Muras
-
Patent number: 7921102Abstract: A method, apparatus and program product is provided for optimizing a database query. A query syntax, system generated predicates, and requisite statistics of the database query are analyzed to determine if a predicate structure is a good candidate for a symbol table only data structure. The predicate structure is analyzed to determine if the predicate structure is already encompassed by an encoded vector index. The symbol table only data structure is generated for at least one column in a database table without generating a corresponding vector data structure from an encoded vector index if the predicate structure is a good candidate and not encompassed by an encoded vector index. The symbol table only data structure is maintained by detecting a change in data associated with the symbol table only data structure and updating the symbol table only data structure to reflect the change in the data.Type: GrantFiled: July 20, 2010Date of Patent: April 5, 2011Assignee: International Business Machines CorporationInventors: Michael W. Cain, Michael S. Faunce, Wei Hu, Shantan Kethireddy, Andrew Peter Passe, Ulrich Thiemann
-
Publication number: 20100287206Abstract: A method, apparatus and program product is provided for optimizing a database query. A query syntax, system generated predicates, and requisite statistics of the database query are analyzed to determine if a predicate structure is a good candidate for a symbol table only data structure. The predicate structure is analyzed to determine if the predicate structure is already encompassed by an encoded vector index. The symbol table only data structure is generated for at least one column in a database table without generating a corresponding vector data structure from an encoded vector index if the predicate structure is a good candidate and not encompassed by an encoded vector index. The symbol table only data structure is maintained by detecting a change in data associated with the symbol table only data structure and updating the symbol table only data structure to reflect the change in the data.Type: ApplicationFiled: July 20, 2010Publication date: November 11, 2010Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Michael W. Cain, Michael S. Faunce, Wei Hu, Shantan Kethireddy, Andrew Peter Passe, Ulrich Thiemann
-
Patent number: 7792823Abstract: A method, apparatus and program product is provided for optimizing a database query. A query syntax, system generated predicates, and requisite statistics of the database query are analyzed to determine if a predicate structure is a good candidate for a symbol table only data structure. The predicate structure is analyzed to determine if the predicate structure is already encompassed by an encoded vector index. The symbol table only data structure is generated for at least one column in a database table without generating a corresponding vector data structure from an encoded vector index if the predicate structure is a good candidate and not encompassed by an encoded vector index. The symbol table only data structure is maintained by detecting a change in data associated with the symbol table only data structure and updating the symbol table only data structure to reflect the change in the data.Type: GrantFiled: January 15, 2008Date of Patent: September 7, 2010Assignee: International Business Machines CorporationInventors: Michael W. Cain, Michael S. Faunce, Wei Hu, Shantan Kethireddy, Andrew Peter Passe, Ulrich Thiemann
-
Publication number: 20100169381Abstract: A method, apparatus and program product are provided for representing a database query expression including a plurality of predicates related to one another by at least one logical relation. A list of operands is generated from the database query expression, where each operand is representative of a predicate. Each operand is mapped into an operand map. A data structure is generated based upon the generated list of operands, where the data structure includes a plurality of nodes. Each node includes an operand identifier that identifies at least one operand based upon the operand map. Each node defines a first logical relation between those predicates in the database query expression that are represented by operands identified by the operand identifier for such node. The nodes are arranged relative to one another in the data structure to define at least a second logical relation among predicates in the database query expression.Type: ApplicationFiled: December 31, 2008Publication date: July 1, 2010Applicant: International Business Machines CorporationInventors: Michael S. Faunce, Yasunobu Suginaka
-
Publication number: 20090182720Abstract: A method, apparatus and program product is provided for optimizing a database query. A query syntax, system generated predicates, and requisite statistics of the database query are analyzed to determine if a predicate structure is a good candidate for a symbol table only data structure. The predicate structure is analyzed to determine if the predicate structure is already encompassed by an encoded vector index. The symbol table only data structure is generated for at least one column in a database table without generating a corresponding vector data structure from an encoded vector index if the predicate structure is a good candidate and not encompassed by an encoded vector index. The symbol table only data structure is maintained by detecting a change in data associated with the symbol table only data structure and updating the symbol table only data structure to reflect the change in the data.Type: ApplicationFiled: January 15, 2008Publication date: July 16, 2009Inventors: Michael W. Cain, Michael S. Faunce, Wei Hu, Shantan Kethireddy, Andrew Peter Passe, Ulrich Thiemann
-
Patent number: 7483888Abstract: A database management system predicts a selectivity for database query conditions requiring a join of records from different tables. The system identifies at least one skewed value in a field specified in the join condition, and constructs, for each skewed value, a set of hypothetical query predicates in which the field specified in the join condition is replaced with a constant equal to the skewed value. The system then predicts the selectivity for the hypothetical predicates, using any appropriate prediction technique. The selectivities of the hypothetical predicates are used to predict a selectivity for the original query.Type: GrantFiled: November 13, 2007Date of Patent: January 27, 2009Assignee: International Business Machines CorporationInventors: Michael S. Faunce, Shantan Kethireddy, Brian Robert Muras
-
Publication number: 20080301085Abstract: Embodiments of the invention provide techniques for generating database statistics for optimizing union queries. In general, working sets including samples of values in database columns are persistently maintained in a database. To optimize a union query, the working sets describing the columns included in the union query are combined to generate an ad hoc working set. The ad hoc working set is then used to generate a database statistic describing the combined columns. In another embodiment, working sets may also be maintained for generating statistics for optimizing non-union queries, thus enabling statistics to be refreshed more frequently.Type: ApplicationFiled: May 31, 2007Publication date: December 4, 2008Inventors: Michael S. Faunce, Wei Hu, Shantan Kethireddy, Andrew Peter Passe, Ulrich Thiemann
-
Publication number: 20080288444Abstract: An improved method and apparatus is described for a query optimizer to evaluate multi-table join selectivities in a computer database. The query optimizer includes a statistics manager that finds the most appropriate set of assumptions and statistics to use when calculating the cost of an arbitrary join expression. As described herein, the statistics manager implements a unique bucket representation for the join expression. The bucket representation for the join expression can be evaluated and compared to the traditional domino expression so that the best possible estimate can be used. This new representation of the join expression allows the query optimizer to more accurately estimate the join selectivity for many queries compared to traditional representations.Type: ApplicationFiled: May 16, 2007Publication date: November 20, 2008Inventors: John Francis Edwards, Michael S. Faunce, Brian Robert Muras
-
Publication number: 20080256025Abstract: 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: ApplicationFiled: April 13, 2007Publication date: October 16, 2008Inventors: Robert Joseph Bestgen, Michael S. Faunce, Wei Hu, Shantan Kethireddy, Andrew Peter Passe, Ulrich Thiemann
-
Publication number: 20080235181Abstract: Methods, systems, and computer program products are provided for query expression evaluation for query optimization. Embodiments include receiving a query including a plurality of predicates; creating a truth table representing the possible solutions to the query; identifying a plurality of intersections of the truth table, the plurality of intersections including each predicate of the query; assigning a selectivity factor to each predicate; determining in dependence upon the selectivity factors for each predicate a selectivity rating for each of the intersections of the truth table; selecting one or more of the intersections in dependence upon the selectivity rating; and determining in dependence upon the selected intersections a percentage of rows in a database table returned by the query; and providing the percentage of rows in the database table to an access plan generator for query optimization.Type: ApplicationFiled: March 23, 2007Publication date: September 25, 2008Inventors: Michael S. Faunce, Yasunobu Suginaka
-
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
-
Patent number: 7343369Abstract: A database management system predicts a selectivity for database query conditions requiring a join of records from different tables. The system identifies at least one skewed value in a field specified in the join condition, and constructs, for each skewed value, a set of hypothetical query predicates in which the field specified in the join condition is replaced with a constant equal to the skewed value. The system then predicts the selectivity for the hypothetical predicates, using any appropriate prediction technique. The selectivities of the hypothetical predicates are used to predict a selectivity for the original query.Type: GrantFiled: November 18, 2004Date of Patent: March 11, 2008Assignee: International Business Machines CorporationInventors: Michael S. Faunce, Shantan Kethireddy, Brian Robert Muras