2 Introduction

Eloquence DBMS Organization

The following sections describe the structure and access methods employed by Eloquence DBMS.

Eloquence DBMS Logical Structure

Eloquence DBMS is organized into three sections: database definition, database manipulation, and database maintenance.

Database definition is accomplished using an editing program (for example, vi on UNIX, Notepad on Windows) and the schema program. These programs are used in conjunction with the database definition language (DBDL) to define the structure, size and security of a database.

Database access and manipulation is performed using the database manipulation statements. These statements are invoked from Eloquence programs, and serve as an interface between databases and application programs. The manipulation statements handle database access and structural housekeeping.

Database maintenance operations are performed using the database utilities. These utilities provide the capability to create, purge, and erase data sets. You can also report on the structure of the database and, if desired, restructure the database.

Database Organization

There are three basic structures within an Eloquence database: data items, data entries, and data sets.

A data item is the smallest data element. Each data item has a value and is referenced by a data item name. Data items correspond to program variables within an applications program.

Some examples are:
Data Item Name Data Item Values
 Standard Bicycle
 10-Speed Bicycle

A data entry, or record, is an ordered collection of related data items. All data is transferred to and from a database on a record basis.

For example:
Data Entry Values50Tricycle
 100Standard Bicycle
 100010-Speed Bicycle

A data set is a collection of data entries sharing a common definition. All entries in a data set are stored as a separate file in a directory and are referred to by a data set name. Some examples are shown below:

Data Set Name:
Data Entry Definition:
Record No.  
2100010-Speed Bicycle
3100Standard Bicycle

Types of Data Sets

There are two types of data sets in the Eloquence DBMS: master data sets and detail data sets. Detail data sets are used to store "line item" information. Master data sets are generally used as indexes to information within detail data sets. For example, the CUSTOMER detail data set shown below contains information about a customer order, such as the customer's name and the product purchased. A related master set, PRODUCT, is used to point to all orders for a particular product. This association of an item in a master data set is known as a data path. The information in a master data set is unique (for example, one product number 100). Up to 16 data paths may be defined for a particular data set. The item used to link the master data set with the detail data set is known as a search item. Master data sets have only one search item, but detail data sets may have up to 16 search items.

Data entries contain pointer information used to link related entries. Detail entries contain pointers to other entries containing the same search item value. This linkage of related detail entries is known as a data chain. Master entries contain pointers to the beginning and end of data chains, along with the number of entries within the chain. This chain information is automatically maintained by the Eloquence DBMS.

Figure 2 Data Chain Example

Eloquence Database Manual - 19 DEC 2002