Browse Prior Art Database

Classification and Use of DL/I Indexes in a Query System

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

Publishing Venue

IBM

Related People

Larner, A: AUTHOR

Abstract

IBM's Data Language, DL/I, supports Physical Data Bases, Logical Data Bases, and Indexes. An Index provides an alternative accessing sequence for a Physical Data Base. Usually, an Index is defined and maintained with a particular application or applications in view. A Program Communication Block (PCB) defined on such an index is used by those applications in order to optimize their access to the data base. A system supporting ad hoc queries on data bases, however, requires to have available a number of PCBs defined on different Indexes and to select the appropriate PCBs, and therefore Indexes, in order to optimize access on each query. The relation between a DL/I Index and a Non-index (Physical) Data Base depends upon the following: ΠThe Pointer Segment, that is, the type of segment found in the Index.

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

Page 1 of 6

Classification and Use of DL/I Indexes in a Query System

IBM's Data Language, DL/I, supports Physical Data Bases, Logical Data Bases, and Indexes. An Index provides an alternative accessing sequence for a Physical Data Base. Usually, an Index is defined and maintained with a particular application or applications in view. A Program Communication Block (PCB) defined on such an index is used by those applications in order to optimize their access to the data base. A system supporting ad hoc queries on data bases, however, requires to have available a number of PCBs defined on different Indexes and to select the appropriate PCBs, and therefore Indexes, in order to optimize access on each query. The relation between a DL/I Index and a Non-index (Physical) Data Base depends upon the following: OE The Pointer Segment, that is, the type of segment found in the Index. OE The Target Segment, that is, the type of non-index segment accessed when the Pointer Segment is read. OE The Source Segment, that is, the type of non-index segment from which the data in the Pointer Segment, in

particular its key, is derived. DL/I imposes the

constraint that the Source Segment must be either

identical to, or physically dependent on, the Target

Segment. OE Sparseness of the Index, that is, whether there is

one pointer segment instance for each source segment

instance (non-sparse) or whether, either by excluding a

certain key value (NULLVAL), or by selecting certain

source segments by an exit routine (EXTRTN), some

source segments are prevented from giving rise to

pointer segments (sparse). In this classification, the following expressions are used: 1.1 One-to-one: two segment types are 1:1 related if, associated with each instance of either type, there is

exactly one instance of the other. 1.c Conditional: two segment types are 1:c related if, associated with each instance of the first type, there

is no more than one instance of the second, and

associated with each instance of the second type there

is exactly one instance of the first. 1:s One-to-some: two segment types are 1:s related if, associated with each instance of the first type, there

is at least one instance of the second, and associated

with each instance of the second type there is exactly

one instance of the first. 1:m One-to-many: two segment types are 1:m related if, associated with each instance of the second type, there

is exactly one instance of the first (but one instance

of the first may be associated with any number of

instances of the second, or with none). Classification of Indexes (I) Target and Source Segments Identical, Non-sparse

1

Page 2 of 6

Indexing, -Target-to-Pointer is 1:1. (Ic) Target and Source Segments Identical, Sparse Indexing, -Target-to-Pointer is 1:c. (O) Target Segment 1:1 related to Source Segment, Non-sparse Indexing, -Target-to-Pointer is 1:1. (Oc) Target Segment 1:1 related to Source Segment, Sparse Indexing, -Target-to-Pointer is 1:c. (C) Target Segment 1:c re...