Petrus Kai Chung Chan - Richmond Hill, CA Roberta Jo Cochrane - Los Gatos CA Sam Sampson Lightstone - Toronto, CA Mir Hamid Pirahesh - San Jose CA Richard Sefton Sidle - Mountain View CA Tuong Chanh Truong - San Jose CA Michael J. Winer - Markham, CA Calisto Paul Zuzarte - Pickering, CA
Assignee:
International Business Machines Corporation - Armonk NY
International Classification:
G06F 1730
US Classification:
707 3, 707100, 707201
Abstract:
The invention provides method and apparatus for use in a database management system for managing a database containing data, where the database has storage for storing data in the database, and has an instruction processor for processing instructions for managing data stored in the database. The database has a constraint manager for managing constraints on said data stored in the database. The invention provides efficient method and means for deferred checking of data after bulk loading into said database for violation of constraints by determining an appropriate procedure for constraint checking by determining whether constraint checking is required; and if it is required, determining whether to implement full, or incremental checking for compliance with said constraints; and then checking the data in the database in accordance with the determined constraint checking procedure.
Method Of Optimizing A Query Having An Existi Subquery And A Not-Exists Subquery
Ting Yu Leung - San Jose CA Tuong Chanh Truong - San Jose CA Monica Sachiye Urata - Saratoga CA
Assignee:
International Business Machines Corporation - Armonk NY
International Classification:
G06F 1730
US Classification:
707 2
Abstract:
An optimization technique for SQL queries, a program storage device storing the optimization program, and an apparatus for optimizing a query is provided. A query is analyzed to determine whether it includes the WHERE clause which contains an âEXISTSâ subquery and a âNOT EXISTSâ subquery, or EXISTS-equivalent subqueries, in Boolean factor. If so, the subsumption test is performed on two subqueries. Then, the compensation predicate is applied to one of them, to perform the QGM transformation of the query. One subquery block is stacked on top of the other subquery block, in order to eliminate one subquery. This procedure allows the transformed query to perform more efficiently than the original query while providing same results. The query is then executed in the computer to efficiently retrieve data from the relational database.
Parallel Query Optimization Strategies For Replicated And Partitioned Tables
Ting Yu Leung - San Jose CA Mir Hamid Pirahesh - San Jose CA David E. Simmen - San Jose CA Tuong Chanh Truong - San Jose CA
Assignee:
International Business Machines Corporation - Armonk NY
International Classification:
G06F 1730
US Classification:
707 2, 707 4
Abstract:
A method, apparatus, and article of manufacture for optimizing database queries. The query is analyzed to determine whether at least a portion of the query can be evaluated using a plurality of parallel operations without data redistribution. If so, then the most efficient query execution plan that uses these parallel operations is constructed and executed.
Method Of Optimizing Sql Queries Where A Predicate Matches Nullable Operands
Ting Yu Leung - San Jose CA, US Tuong Chanh Truong - San Jose CA, US
Assignee:
International Business Machines Corporation - Armonk NY
International Classification:
G06F 7/00
US Classification:
707 4
Abstract:
An optimization technique for SQL queries, a program storage device storing the optimization program, and an apparatus for optimizing a query is provided. A query is analyzed to determine whether it includes a predicate for matching nullable operands and, if so, it is transformed to return TRUE when all operands are NULLs. If the DBMS supports this new function, the predicate is marked. If not, the predicate is re-written into a CASE expression having two SELECT clauses. The query is then executed in the computer to efficiently retrieve data from the relational database.
Method, System, And Program For Merging Log Entries From Multiple Recovery Log Files
Serge Bourbonnais - Palo Alto CA, US Elizabeth Belva Hamel - Morgan Hill CA, US Bruce G. Lindsay - San Jose CA, US Chengfei Liu - Rostrevor, AU Jens Stankiewitz - Dorsten, DE Tuong Chanh Truong - San Jose CA, US
Assignee:
International Business Machines Corporation - Armonk NY
International Classification:
G06F 17/30
US Classification:
707202, 707101
Abstract:
Provided are a method, system, and program for merging independent log entries in a multiple node shared nothing DBMS. Initially, log entries from multiple log entries are combined to form a single log entry sequence. Local transactions are generated from the single log entry sequence and stored in a local transactions structure. In particular, log entries with the same local transaction identifier form a local transaction. Then, local transactions having the same global identifier are merged to form global transactions.
Apparatus And Method For Skipping Xml Index Scans With Common Ancestors Of A Previously Failed Predicate
Edison Lao Ting - San Jose CA, US Tuong Chanh Truong - San Jose CA, US
Assignee:
International Business Machines Corporation - Armonk NY
International Classification:
G06F 17/30
US Classification:
707 6, 707102
Abstract:
An apparatus and method are disclosed for skipping XML index scans with common ancestors of a previously failed predicate. An XML index is scanned by an XML index scan to filter entries of the index matching at least one search value (predicate) of an XML query. When the XML index scan finds a matching entry, the entry is passed to an XPath evaluation component. The XPath evaluation component evaluates the entry against remaining predicates of the XML query for further qualification. When the XPath evaluation component disqualifies an entry, the XPath evaluation component provides feedback to the XML index scan to skip remaining entries comprising a common ancestor of the disqualified entry's path. The XML index scan can then efficiently skip index entries that will not qualify against the XML query.
Three-Phase Single-Pass Efficient Processing Of Xquery Update
Uttam Jain - San Jose CA, US Henrik Loeser - San Jose CA, US Tuong Truong - San Jose CA, US Robbert Van der Linden - Scotts Valley CA, US
Assignee:
International Business Machines Corporation - Armonk NY
International Classification:
G06F 7/00 G06F 17/30
US Classification:
707752, 707769
Abstract:
A system and method is provided for processing XQuery Updates on an Extensible Markup Language (XML) document. The XQuery Updates are processed in three phases. The first phase includes creating a pending update list (PUL) including all update operations to be performed on nodes in a fragment of the Extensible Markup Language (XML) document. The second phase includes sorting the PUL. The third phase includes applying the sorted PUL to each node in the XML fragment during a single traversal of the XML fragment.
Apparatus And Method For Optimizing Descendant Path Evaluation In Xpath/Xquery
Kevin S. Beyer - San Jose CA, US Edison L. Ting - San Jose CA, US Tuong C. Truong - San Jose CA, US
Assignee:
International Business Machines Corporation - Armonk NY
International Classification:
G06F 17/30
US Classification:
707711, 707715, 707716, 707737, 707758
Abstract:
An apparatus and method for optimizing descendant path evaluation in XPath/XQuery includes generating a list of unique paths in a tree structure of an XML document. Each unique path includes one or more nodes of the tree structure. A query is received specifying a descendant node for retrieval from the tree structure. From the list, unique paths are identified that include the descendant node. A navigation aid is then generated to assist in traversing the unique paths that include the descendant node. Using the navigation aid as a guide, descendant nodes in the tree structure may be retrieved by traversing only unique paths that include the descendant node.