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: 7313553
    Abstract: A database query optimizer determines when no optimal index for a query exists, determines whether a sub-optimal index exists, and if so, uses statistical information for each additional key in the sub-optimal index to rewrite the query in a manner that allows traversing the sub-optimal index. The sub-optimal index is then probed using the rewritten query, and the number of estimated returned rows is then used to optimize the query.
    Type: Grant
    Filed: March 31, 2004
    Date of Patent: December 25, 2007
    Assignee: International Business Machines Corporation
    Inventors: Michael S. Faunce, Brian Robert Muras
  • Patent number: 7203685
    Abstract: A cardinality estimator computes an estimated cardinality for a database column using a formula that accounts for skew in the data in the column. The result is an estimate of cardinality that more closely resembles the actual cardinality in the column. The improved cardinality estimate may then be used to make better query optimizations.
    Type: Grant
    Filed: December 11, 2003
    Date of Patent: April 10, 2007
    Assignee: International Business Machines Corporation
    Inventors: Abdo Esmail Abdo, Michael S. Faunce
  • Patent number: 6996556
    Abstract: A metadata manager is used in a database management system to collect and maintain metadata associated with a database. Multiple optimizer instances are permitted to access the metadata maintained by the metadata manager, often eliminating the need for individual optimizer instances to retrieve and process metadata directly from the database. As such, the overhead associated with operations such as collecting, refining, retrieving and/or maintaining of metadata can be off-loaded from the optimizer instances, often accelerating individual cost estimation calculations by optimizer instances, facilitating reuse of metadata calculations and refinements, and improving metadata consistency between multiple related cost estimates.
    Type: Grant
    Filed: August 20, 2002
    Date of Patent: February 7, 2006
    Assignee: International Business Machines Corporation
    Inventors: Curtis Neal Boger, John Francis Edwards, Randy Lynn Egan, Michael S. Faunce
  • Patent number: 6968330
    Abstract: A database query optimizer processes an expression in a database query, and generates therefrom an operand list and a corresponding truth table that may be represented by a list of binary characters, where the operand list and corresponding truth table represent a disjunct normal form for the expression. Each expression is stored once it is processed into its operand list and corresponding list of binary characters. New queries are processed into component expressions, and each expression is checked to see if the expression was previously processed and stored as a processed expression. If so, the operand list and list of binary characters for the previously-stored expression may be used in processing the current expression. If there is no previously-stored expression that corresponds to the current expression, the previously-stored expressions are checked to see if any correspond to a complement of the current expression.
    Type: Grant
    Filed: November 29, 2001
    Date of Patent: November 22, 2005
    Assignee: International Business Machines Corporation
    Inventors: John Francis Edwards, Michael S. Faunce
  • Patent number: 6732196
    Abstract: A method for dispatching input/output access requests to a direct access storage device (DASD) is disclosed. Each of a group of I/O access requests to DASD is assigned into one of at least two I/O access request categories, namely, high priority I/O access requests and low priority I/O access requests. Each of a group of I/O slots within DASD is assigned into one of at least two I/O slot categories, namely, high priority I/O slots and low priority I/O slots. An I/O access request from a first one of the two I/O access request categories is sent to any one of the I/O slots. An I/O access request from a second one of the two I/O access request categories is sent to only a slot belonging to a subset of the two I/O slot categories.
    Type: Grant
    Filed: February 26, 2002
    Date of Patent: May 4, 2004
    Assignee: International Business Machines Corporation
    Inventors: Abdo Esmail Abdo, Troy David Armstrong, Michael S. Faunce, Kurt Walter Pinnow
  • Publication number: 20040039729
    Abstract: A metadata manager is used in a database management system to collect and maintain metadata associated with a database. Multiple optimizer instances are permitted to access the metadata maintained by the metadata manager, often eliminating the need for individual optimizer instances to retrieve and process metadata directly from the database. As such, the overhead associated with operations such as collecting, refining, retrieving and/or maintaining of metadata can be off-loaded from the optimizer instances, often accelerating individual cost estimation calculations by optimizer instances, facilitating reuse of metadata calculations and refinements, and improving metadata consistency between multiple related cost estimates.
    Type: Application
    Filed: August 20, 2002
    Publication date: February 26, 2004
    Applicant: International Business Machines Corporation
    Inventors: Curtis Neal Boger, John Francis Edwards, Randy Lynn Egan, Michael S. Faunce
  • Publication number: 20030163609
    Abstract: A method for dispatching input/output access requests to a direct access storage device (DASD) is disclosed. Each of a group of I/O access requests to DASD is assigned into one of at least two I/O access request categories, namely, high priority I/O access requests and low priority I/O access requests. Each of a group of I/O slots within DASD is assigned into one of at least two I/O slot categories, namely, high priority I/O slots and low priority I/O slots. An I/O access request from a first one of the two I/O access request categories is sent to any one of the I/O slots. An I/O access request from a second one of the two I/O access request categories is sent to only a slot belonging to a subset of the two I/O slot categories.
    Type: Application
    Filed: February 26, 2002
    Publication date: August 28, 2003
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Abdo Esmail Abdo, Troy David Armstrong, Michael S. Faunce, Kurt Walter Pinnow
  • Publication number: 20030100960
    Abstract: A database query optimizer processes an expression in a database query, and generates therefrom an operand list and a corresponding truth table that may be represented by a list of binary characters, where the operand list and corresponding truth table represent a disjunct normal form for the expression. Each expression is stored once it is processed into its operand list and corresponding list of binary characters. New queries are processed into component expressions, and each expression is checked to see if the expression was previously processed and stored as a processed expression. If so, the operand list and list of binary characters for the previously-stored expression may be used in processing the current expression. If there is no previously-stored expression that corresponds to the current expression, the previously-stored expressions are checked to see if any correspond to a complement of the current expression.
    Type: Application
    Filed: November 29, 2001
    Publication date: May 29, 2003
    Applicant: International Business Machines Corporation
    Inventors: John Francis Edwards, Michael S. Faunce