Browse Prior Art Database

Enhancement of Query Access Optimization by Functional Dependencies

IP.com Disclosure Number: IPCOM000062546D
Original Publication Date: 1986-Dec-01
Included in the Prior Art Database: 2005-Mar-09
Document File: 3 page(s) / 16K

Publishing Venue

IBM

Related People

Larner, A: AUTHOR

Abstract

To assist in the optimization of access in a data base query system, particularly one employing Access Independent Query Definition (AIQD), given a particular path definition defined for a query, it is first expanded by adding segments, then transformed into any path that has the same query structure, and then eroded by subtracting segments. As described in AIQD, the selection of a segment in an Entry Data Base (EDB) may be used to determine a number of paths (as defined in Program Communication Blocks (PCBs) which have a common query structure. The possession of such a common query structure by a set of paths means that any query defined on any one of those paths may be executed using any other path in the set.

This text was extracted from a PDF file.
This is the abbreviated version, containing approximately 42% of the total text.

Page 1 of 3

Enhancement of Query Access Optimization by Functional Dependencies

To assist in the optimization of access in a data base query system, particularly one employing Access Independent Query Definition (AIQD), given a particular path definition defined for a query, it is first expanded by adding segments, then transformed into any path that has the same query structure, and then eroded by subtracting segments. As described in AIQD, the selection of a segment in an Entry Data Base (EDB) may be used to determine a number of paths (as defined in Program Communication Blocks (PCBs) which have a common query structure. The possession of such a common query structure by a set of paths means that any query defined on any one of those paths may be executed using any other path in the set. This path applicability condition is refined by the following process: given a particular path definition defined for a query, it is expanded by adding segments, transformed into any path that has the same query structure (according to AIQD), and the resultant path eroded by subtracting segments. The path so generated is not necessarily of the same query structure as the originally defined path; nevertheless, it is appropriate for execution of the query and may be more efficiently usable than any path of the same query structure as the defined path. AIQD inter-segment relations are physical parent, physical child, logical parent, logical child, and pair. In Conceptual Data Bases, the logical relations are: OE logical parent of = physical parent of pair of OE logical child of = pair of physical child of and consequently 'parent' or 'child' alone can be used for 'physical parent' or 'physical child'. The refinement depends on the existence dependency of the child relation; that is to say, if some segment, s, is a child of a segment, p, when the latter is deleted, the former is also deleted. This is ensured by DL/I. Conversely, the parent relation is a functional dependency; that is to say, because s is a segment of a certain type, there must be a (that is, just one) segment of another type, p, upon which s is existence dependent; therefore, once s is specified, p is automatically specified - 'the parent of s'. Formally, there is a function (the relation 'parent of') from any dependent segment (to its parent). The pair relation is both an existence and a functional dependency (again, as in AIQD, consistent update rules are assumed). Assume a path of segments and, in addition, some segments not in the path but functionally dependent on segments in the path. In reading the path, it is possible, without ill effect, to read those functionally dependent segments.

This observation leads to the first part of any implementation of the refinement - path expansion. Each segment in the path, if it has a parent or a pair not in the path, has that parent or pair added to the path. This may expand the path at either end or (orthogonally) from the middle. The expanded path...