摘要:
An apparatus, system, and method are disclosed for ensuring query execution plan stability in a database management system. The present invention binds a static database query to a new query execution plan (QEP) that produces the same result set as an original QEP bound to the static database query. Next, the present invention identifies one of the original QEP and the new QEP as a primary QEP and automatically collects execution statistics for the original QEP and the new QEP. Finally, the present invention automatically selects one of the original QEP and the new QEP as the primary QEP in response to completion of the automatic collection of execution statistics, the primary QEP selected such that the automatically selected QEP provides optimal execution performance based on performance criteria in comparison to the automatically unselected QEP, the primary QEP selected based on the execution statistics.
摘要:
An apparatus, system, and method are disclosed for ensuring query execution plan stability in a database management system. The present invention binds a static database query to a new query execution plan (QEP) that produces the same result set as an original QEP bound to the static database query. Next, the present invention identifies one of the original QEP and the new QEP as a primary QEP and automatically collects execution statistics for the original QEP and the new QEP. Finally, the present invention automatically selects one of the original QEP and the new QEP as the primary QEP in response to completion of the automatic collection of execution statistics, the primary QEP selected such that the automatically selected QEP provides optimal execution performance based on performance criteria in comparison to the automatically unselected QEP, the primary QEP selected based on the execution statistics.
摘要:
An apparatus, system, and method are disclosed for improving query execution plan efficiency in a database management system. The present invention binds both static database queries and dynamic database queries to new query execution plans (QEPs) that produce the same result set as a former QEP bound to the database queries. Next, the present invention identifies one of the former QEPs and the new QEP as an active QEP and automatically collects execution statistics for one of the former QEPs and the new QEP. Finally, the present invention automatically selects one of the former QEPs and the new QEP as the active QEP in response to completion of the automatic collection of execution statistics, the active QEP selected such that the automatically selected QEP provides optimal execution performance based on performance criteria in comparison to the automatically unselected QEP, the active QEP selected based on the execution statistics.
摘要:
An apparatus, system, and method are disclosed for improving query execution plan efficiency in a database management system. The present invention binds both static database queries and dynamic database queries to new query execution plans (QEPs) that produce the same result set as a former QEP bound to the database queries. Next, the present invention identifies one of the former QEPs and the new QEP as an active QEP and automatically collects execution statistics for one of the former QEPs and the new QEP. Finally, the present invention automatically selects one of the former QEPs and the new QEP as the active QEP in response to completion of the automatic collection of execution statistics, the active QEP selected such that the automatically selected QEP provides optimal execution performance based on performance criteria in comparison to the automatically unselected QEP, the active QEP selected based on the execution statistics.
摘要:
A method for performing disjunctive single-index access on a database is disclosed. The method includes a query engine determining whether a first OR predicate and a second OR predicate map to a shared index. Responsive to the query engine determining that the first OR predicate and the second OR predicate map to the shared index, the first OR predicate and the second OR predicate are ordered in an ascending sequence. A first range of the first OR predicate is queued. A first row of the shared index is probed for the first range of the first OR predicate. Whether the first row is disqualified by the first OR predicate is determined. Responsive to determining that the first row is not disqualified by the first OR predicate, the row is reported in a result reporting structure. Responsive to determining that the row is disqualified by the first OR predicate, whether the first range of the first OR predicate overlaps a second range of the second OR predicate is determined, and, responsive to determining that the first range of the first OR predicate overlaps the second range of the second OR predicate, the row is checked against second range of the second or predicate.
摘要:
A method for performing disjunctive single-index access on a database is disclosed. The method includes a query engine determining whether a first OR predicate and a second OR predicate map to a shared index. Responsive to the query engine determining that the first OR predicate and the second OR predicate map to the shared index, the first OR predicate and the second OR predicate are ordered in an ascending sequence. A first range of the first OR predicate is queued. A first row of the shared index is probed for the first range of the first OR predicate. Whether the first row is disqualified by the first OR predicate is determined. Responsive to determining that the first row is not disqualified by the first OR predicate, the row is reported in a result reporting structure. Responsive to determining that the row is disqualified by the first OR predicate, whether the first range of the first OR predicate overlaps a second range of the second OR predicate is determined, and, responsive to determining that the first range of the first OR predicate overlaps the second range of the second OR predicate, the row is checked against second range of the second or predicate.
摘要:
An adaptive query execution plan enhancement is provided by: selecting a sample of literal sets from an execution history of a query statement; determining a plurality of access paths by applying each literal set in the sample to the query statement; for each given access path of the plurality of access paths, determining a total execution cost by applying each literal set in the sample to the given access path; and selecting a preferred access path from the plurality of access paths based on the total execution costs for each given access path. A plurality of preferred access paths for a plurality of query statements in an application workload is collected and may be presented as a query execution plan enhancement recommendation to users.
摘要:
A method and system for managing a computer system are described. The method and system include defining and storing a policy using a policy manager. In one aspect, the policy manager also activates and resolves conflicts between policies. The policy is a declarative statement of a directive to be carried out by the computer system. The method and system also include using a policy executor to determine whether a request to the computer system is covered by the policy. The method and system further include utilizing the computer system to carry out the directive for the policy if the request is covered by the policy through a policy enforcer.
摘要:
A method, system, and computer program product are provided for retrieving records into a main memory. A first number of gaps and a first total gap size are received for a list of records from a database subsystem. A determination is made of a first average gap size using the first number of gaps and the first total gap size. A determination is made as to whether the first average gap size is greater than a prestaging threshold value. Responsive to the first average gap size being equal to or less than the prestaging threshold value, a prestaging flag is set for the list of records. Then, the list of records is retrieved into the main memory using prestaging.
摘要:
Techniques for database table look-up are provided. The techniques include storing one or more column attributes of a database table in a data structure, wherein the data structure also comprises a record identification (RID) column of a table, one or more predicate columns corresponding to the RID column, and a sequence number column that is associated with one or more updated records, generating a key using one or more portions from one or more of the one or more predicate columns, using the key to partition the data structure, wherein partitioning the data structure comprises partitioning the one or more predicate columns for evaluation, and evaluating the one or more predicate columns against the data structure for each matching predicate column-data structure partition.