摘要:
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.
摘要:
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.
摘要:
According to one embodiment of the present invention, a system processes a database query, and comprises a computer system including at least one processor. The system identifies one or more expressions within the database query utilizing a database object with value masking. Masking requirements are determined for each identified expression and the database object utilized by that identified expression is replicated to provide masked and actual versions of that database object in response to the masking requirements for that expression including masked values and actual values of that database object. The value masking of the database object is applied to the identified expressions within the database query based on the determined masking requirements to produce search results with masked values for the database query. Embodiments of the present invention further include a method and computer program product for processing a database query in substantially the same manner described above.
摘要:
Various aspects of this disclosure are directed to receiving, by a computing device, a first table join query that may include a first group of table identifiers that identify the two or more tables. The computing device may determine whether the first table join query includes an outer join command. When the first table join query includes the outer join command, the computing device may compare the first group of table identifiers and a second group of table identifiers of one or more pre-joined tables to determine whether each of the first table identifiers matches at least one of the second group of table identifiers. The computing device may further determine whether a predicate associated with each table identifier matches a predicate associated with a matching second table identifier. When each of the predicates match, the computing device may rewrite the first table join query.
摘要:
A technique for optimizing execution of a query that accesses data stored on a data store connected to a computer. Query predicates involving different data types are identified. A second query predicate is generated which includes matching data types, and if necessary, converted operators. The second query predicate with the matching data types and/or converted operators is executed to obtain a subset of records using an index manager or data manager. The subset of records is converted to the data types of the remaining query predicates. The first query predicate is applied against the subset of records to obtain a result, and the remaining query predicates of the original query are applied to the result of the first query predicate and any other additional converted query predicates to obtain a final result.
摘要:
A method, apparatus, and article of manufacture for improving the performance of evaluating predicates with non-matching operands by aggressively casting the input value to the data type of the target column before the data of the target column is accessed.
摘要:
Various aspects of this disclosure are directed to receiving, by a computing device, a first table join query that may include a first group of table identifiers that identify the two or more tables. The computing device may determine whether the first table join query includes an outer join command. When the first table join query includes the outer join command, the computing device may compare the first group of table identifiers and a second group of table identifiers of one or more pre-joined tables to determine whether each of the first table identifiers matches at least one of the second group of table identifiers. The computing device may further determine whether a predicate associated with each table identifier matches a predicate associated with a matching second table identifier. When each of the predicates match, the computing device may rewrite the first table join query.
摘要:
According to one embodiment of the present invention, a system processes a database query, and comprises a computer system including at least one processor. The system identifies one or more expressions within the database query utilizing a database object with value masking. Masking requirements are determined for each identified expression and the database object utilized by that identified expression is replicated to provide masked and actual versions of that database object in response to the masking requirements for that expression including masked values and actual values of that database object. The value masking of the database object is applied to the identified expressions within the database query based on the determined masking requirements to produce search results with masked values for the database query. Embodiments of the present invention further include a method and computer program product for processing a database query in substantially the same manner described above.