Patent application number | Description | Published |
20090106219 | SQL Execution Plan Verification - Approaches, techniques, and mechanisms are disclosed for ensuring that a database command is executed according to a query plan that has been verified to be actually optimal. Except in rare circumstances, a database server does not execute a query plan unless it is first verified by the database server. The database server receives a request to execute a database command. The database server determines an unverified plan is the best plan for satisfying the request. Rather than risk the unknown behavior of an unverified plan, the database server instead satisfies the request according to a verified plan. Subsequently—for example as part of a scheduled job—the database server executes the unverified plan to determine performance statistics. Based at least on the performance statistics, the database server determines whether or not to verify the unverified plan. Techniques for concurrent and optimistic verifications are also disclosed. | 04-23-2009 |
20090106306 | SQL Execution Plan Baselines - Approaches, techniques, and mechanisms are disclosed for maintaining a set of baseline query plans for a database command. Except in rare circumstances, a database server may only execute a command according to a baseline plan, even if the database server predicts that a different plan has a lower cost. The set of baseline plans are plans that, for one reason or another, have been determined to provide acceptable actual performance in at least one execution context. When the database server receives a request to execute a particular command, the database server, if possible, always executes the command according to the lowest predicted cost baseline plan. The database server may evolve the plan baseline to include additional plans by generating and testing new plans in response to new requests to execute the database command, or as part of a query optimization or tuning process. | 04-23-2009 |
20090106320 | Automatic Recognition and Capture of SQL Execution Plans - Approaches, techniques, and mechanisms are disclosed for capturing and utilizing information related to query plans exhibiting interesting characteristics. A database server receives a request to execute a command. The database server executes the command according to a query plan. In response to determining that the command matches one or more pre-defined criteria, the database server captures information related to the execution of the first command. The criteria may include, for example, whether or not the command is repeatable, the existence of bind variables, access of a particular object, high resource utilization, receipt from a particular user, client, or application, etc. The information recorded may include, for example, performance statistics collected during execution of the first plan, data indicating the execution context during execution of the first plan, and properties of the first plan. The recorded information may subsequently be utilized by the database server in executing other database other database commands. | 04-23-2009 |
20090106321 | Maintaining and Utilizing SQL Execution Plan Histories - Approaches, techniques, and mechanisms are disclosed for maintaining a history of query plans executed for a database command, along with information related to each query plan. A database server receives a request to execute a particular command. The database server determines a plan for executing the particular command. The database server adds first information to a plan history associated with the particular command. The plan history comprises information related to a plurality of plans that have been generated for the particular command. The first information may include, for example, properties of the plan (including an outline of the plan) as well as statistics collected during execution of the plan. The database server may implement techniques for periodically refreshing information in a plan history. The database server may also implement techniques for purging old or less important plans. | 04-23-2009 |
20110137875 | INCREMENTAL MATERIALIZED VIEW REFRESH WITH ENHANCED DML COMPRESSION - An incremental refresh of a materialized view may be simplified, and therefore made more cost efficient, by reducing the number of DML operations being merged with the materialized view during the incremental refresh. Specifically, subsequences of sequences of data manipulation language operations that have been recorded for a particular row of a base table may be inspected to determine whether the subsequences conform to particular patterns of data manipulation language operator types. If a subsequence conforms to one of the particular patterns, the subsequence may be replaced with a single substitute: either a single data manipulation language operation, or null. Refresh operations that are generated based on the simplified sequences of data manipulation language operations are more simple, and therefore, less costly to perform. | 06-09-2011 |
20140095502 | CLUSTERING A TABLE IN A RELATIONAL DATABASE MANAGEMENT SYSTEM - Techniques are provided that address the problems associated with prior approaches for clustering a fact table in a relational database management system. According to one aspect of the invention, a database server clusters a fact table in a database based on one or more dimension tables. More specifically, rows are stored in the fact table in a sorted order and the order in which the rows are sorted is based on values in one or more columns of one or more of the dimension tables. A user specifies the columns of the dimension tables on which the sorted order is based in “clustering criteria”. The database server uses the clustering criteria to automatically store the rows in the fact table in the sorted order in response to certain user-initiated database operations on the fact-table. | 04-03-2014 |
20140095520 | PRUNING DISK BLOCKS OF A CLUSTERED TABLE IN A RELATIONAL DATABASE MANAGEMENT SYSTEM - Techniques are provided for generating a “dimensional zonemap” that allows a database server to avoid scanning disk blocks of a fact table based on filter predicates in a query that qualify one or more dimension tables. The zonemap divides the fact table into sets of contiguous disk blocks referred to as “zones”. For each zone, a minimum value and a maximum value for each of one or more “zoned” columns of the dimension tables is determined and maintained in the zonemap. For a query that contains a filter predicate on a zoned column, the predicate value can be compared to the minimum value and maximum value maintained for a zone for that zoned column to determine whether a scan of the disk blocks of the zone can be skipped. | 04-03-2014 |
20140236921 | SQL EXECUTION PLAN VERIFICATION - Approaches, techniques, and mechanisms are disclosed for ensuring that a database command is executed according to a query plan that has been verified to be actually optimal. Except in rare circumstances, a database server does not execute a query plan unless it is first verified by the database server. The database server receives a request to execute a database command. The database server determines an unverified plan is the best plan for satisfying the request. Rather than risk the unknown behavior of an unverified plan, the database server instead satisfies the request according to a verified plan. Subsequently—for example as part of a scheduled job—the database server executes the unverified plan to determine performance statistics. Based at least on the performance statistics, the database server determines whether or not to verify the unverified plan. Techniques for concurrent and optimistic verifications are also disclosed. | 08-21-2014 |
Patent application number | Description | Published |
20080205508 | METHOD AND APPARATUS FOR LOW COMPLEXITY VIDEO ENCODING AND DECODING - This disclosure describes unique video encoding and decoding processes compliant to one or more specific coding standards, such as the H.264/AVC standard, without sacrificing coding efficiency. A higher resolution input image is divided into a corresponding set of lower resolution sub-sampled images. The first image of each set is coded as an independent I picture, or coded with respect to the first image of one or more other sets as a P or B picture. Each subsequent image of a set, other than the first image in each set, is encoded with respect to the first image of the same set or an image of another set as a regular P or B picture. A decoding process may employ a decoder conforming to the specific coding standard to decode the encoded data, by rearranging the decoded lower resolution sub-sampled images of each set into corresponding higher resolution output images. | 08-28-2008 |
20120294367 | METHOD AND APPARATUS FOR LOW COMPLEXITY VIDEO ENCODING AND DECODING - This disclosure describes unique video encoding and decoding processes compliant to one or more specific coding standards, such as the H.264/AVC standard, without sacrificing coding efficiency. A higher resolution input image is divided into a corresponding set of lower resolution sub-sampled images. The first image of each set is coded as an independent I picture, or coded with respect to the first image of one or more other sets as a P or B picture. Each subsequent image of a set, other than the first image in each set, is encoded with respect to the first image of the same set or an image of another set as a regular P or B picture. A decoding process may employ a decoder conforming to the specific coding standard to decode the encoded data, by rearranging the decoded lower resolution sub-sampled images of each set into corresponding higher resolution output images. | 11-22-2012 |