Patent application number | Description | Published |
20080256024 | Portable and Iterative Re-Usable Suboptimization of Database Queries - A method, apparatus and program product to optimize a database query. A query plan is generated for the database query where the query plan includes first and second subplans. Cached optimization data associated with the first subplan and generated during evaluation of another query plan for a previous query that uses the first subplan is retrieved. The first subplan is evaluated for resource cost using the retrieved optimization data. The second subplan is also evaluated for resource cost. The query plan is then evaluated for resource cost based upon the evaluations of resource cost for the first and second subplans. A query plan is selected based on evaluations of resource cost and the plan is executed to generate a result set. | 10-16-2008 |
20080256025 | Database Query Optimization Utilizing Remote Statistics Collection - 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. | 10-16-2008 |
20080301085 | Dynamic Database File Column Statistics for Arbitrary Union Combination - 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. | 12-04-2008 |
20090077013 | METHODS, SYSTEMS, AND COMPUTER PROGRAM PRODUCTS FOR USER-DRIVEN TARGETED QUERY RE-OPTIMIZATIONS USING DELTA VALUES - A method, system, and computer program product for user-driven targeted query re-optimizations using delta values are provided. The method includes displaying a query tree for a query via a graphical user interface (GUI), where the query tree includes a plurality of interconnected nodes in a tree structure, and outputting a delta value as a difference between an estimated and an actual performance metric of query execution. The method also includes receiving a request to provide alternative execution plans for a subtree of a selected node of the query tree, and displaying at least one alternative execution plan description for the subtree of the selected node. The method further includes receiving a re-optimization request for a user selected alternative execution plan description, and displaying a re-optimized query tree resulting from the re-optimization request. | 03-19-2009 |
20090248618 | Database Query Processing with Dynamically Activated Buffers - A method, apparatus and program product dynamically activate and/or deactivate buffers during execution of a database query. The dynamic deactivation and activation is based on the monitoring of information associated with the consumption of data by a plurality of threads during execution of an access plan for the database query. By doing so, the selection of a less optimal buffer position during optimization may be replaced with a more optimal buffer position during runtime, often resulting in improved query performance and parallelism. | 10-01-2009 |
20090276394 | OBTAINING A PLAN FOR EXECUTING A QUERY IN A RELATIONAL DATABASE - 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. | 11-05-2009 |
20090281986 | Generating Database Query Plans - 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. | 11-12-2009 |
20090281992 | Optimizing Database Queries - 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. | 11-12-2009 |
20090282272 | Organizing Databases for Energy Efficiency - 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. | 11-12-2009 |
20090319474 | Aggregating Database Queries - Embodiments of the invention provide techniques for aggregating database queries for energy efficiency. In one embodiment, queries received by a DBMS are aggregated and staged according to hard-disk drives required for query execution. Each group of queries accessing a given drive may be dispatched for execution together. Further, the queries received by a DBMS may be matched to patterns of previously received queries. The matching patterns may be used to predict other queries which are likely to be received by the DBMS. The received queries may be staged to be dispatched with the predicted queries. By aggregating queries to be executed, access to each hard-disk drive may be optimized, thus reducing the overall energy consumption required for executing the queries. | 12-24-2009 |
20090319475 | Grouping Predicted Database Queries - Embodiments of the invention provide techniques for aggregating database queries for energy efficiency. In one embodiment, queries received by a DBMS are aggregated and staged according to hard-disk drives required for query execution. Each group of queries accessing a given drive may be dispatched for execution together. Further, the queries received by a DBMS may be matched to patterns of previously received queries. The matching patterns may be used to predict other queries which are likely to be received by the DBMS. The received queries may be staged to be dispatched with the predicted queries. By aggregating queries to be executed, access to each hard-disk drive may be optimized, thus reducing the overall energy consumption required for executing the queries. | 12-24-2009 |
20100036804 | Maintained and Reusable I/O Value Caches - Embodiments of the invention provide techniques for maintaining I/O value caches for database queries. Each maintained cache may be configured for use with a particular database query. Each cache may be persistently maintained in a system, meaning the cache is not automatically deleted after some period of time, and may thus be used to process subsequent instances of the same query. By use of the maintained cache, executing subsequent instances of the query may be avoided, thus saving time and system resources. Further, the maintained cache may be adapted to process other queries having similar characteristics to the initial query. The data included in each cache may be refreshed as required by changes to the underlying data. | 02-11-2010 |
20100036805 | System Maintainable and Reusable I/O Value Caches - Embodiments of the invention provide techniques for maintaining I/O value caches for database queries. Each maintained cache may be configured for use with a particular database query. Each cache may be persistently maintained in a system, meaning the cache is not automatically deleted after some period of time, and may thus be used to process subsequent instances of the same query. By use of the maintained cache, executing subsequent instances of the query may be avoided, thus saving time and system resources. Further, the maintained cache may be adapted to process other queries having similar characteristics to the initial query. The data included in each cache may be refreshed as required by changes to the underlying data. | 02-11-2010 |
20100287206 | MAINTAINED SYMBOL TABLE ONLY INDEX - 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. | 11-11-2010 |
20120198423 | Code Path Tracking - 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. | 08-02-2012 |