`Windy City Innovations, LLC, Patent Owner
` 1
`
`
`
`Gary G.Bitter
`Editor in Chief
`
`‘Macmillan Publishing Company
`
`New York
`
`Maxwell Macmillan Canada
`Toronto
`Maxwell Macmillan International
`
`
` 2
`
`
`
`Copyright © 1992 by Macmillan Publishing Company
`A Division of Macmillan, Inc.
`
`All rights reserved. No part of this book may be reproduced or
`transmitted in any form or by any means, electronic or mechanical,
`including photocopying, recording, or by any information storage and
`retrieval system, without permission in writing from the Publisher.
`
`Macmillan Publishing Company
`A Division of Macmillan, Inc.
`866 Third Avenue, New York, NY 10022
`
`Maxwell Macmillan Canada, Inc.
`1200gEglinton Avenue East, Suite 200, Don Mills, Ontario M3C 3N1
`
`Macmillan, Inc., is part of the Maxwell Communication Group of
`Companies.
`
`Library of Congress Catalog Card Number: 91-45339
`
`Printed in the United States of America
`
`Printing number
`1 2 3 4 5 6 7 8 9 10
`
`Library of Congress Cataloging—in~Publication Data
`
`Macmillan encyclopedia of computers / Gary G. Bitter, editor in chief.
`p.
`cm.
`_
`ISBN 0-02-897045—4 (set). — ISBN O-02-897046—2 (vol. 1). — ISBN
`0-O2—897047-0 (vol. 2)
`1. Computers-—Encyclopedias.
`QA76.15.M33
`1992
`004’.O3—-dc20
`
`I. Bitter, Gary G.
`
`91-45339
`CIP
`
`The paper used in this publication meets the minimum requirements of
`American National Standard for Information Sciences—Permanence of
`Paper for Printed Library Materials. ANSI Z39/18-1984.
`
`
` 3
`
`
`
`230
`
`DATABASE DESIGN, AUTOMATED
`
`input? What happens if a lightning bolt
`strikes a thermocouple? Will it destroy the
`data acquisition hardware? Will it also de-
`stroy the computer? Both can happen.
`The remote instrument approach is the
`best way to allow for
`the kind of high
`reliability just discussed, as the data acquisi-
`tion hardware is physically and electrically
`separated from the computer. The board
`approach is the most
`risky, but may be
`entirely acceptable if the installer is careful
`and knowledgeable.
`
`Price
`
`Little needs to be said about price, except
`that each application has its price con-
`straints, and each different hardware ap-
`proach has a different price. Price must be
`weighed along with all the other factors to
`arrive at the best balance. In general,
`the
`boards are the least expensive, the remote
`instruments are the most expensive, and the
`proprietary board/remote instrument com-
`binations are intermediate. This is because a
`remote instrument must contain its own
`
`power supply and also a communication
`subsystem to talk to the computer.
`
`Software
`
`Software is an important part of the total
`picture, as none of these hardware devices
`can be used without it. Many of the afore-
`mentioned characteristics, such as speed,
`throughput, channel type capability, chan-
`nel number capacity, and (especially) ease of
`use, depend on the software as well as the
`hardware. This article is mainly about hard-
`ware, however.
`
`Customer Support
`It is likely that sometime in the life use of any
`data acquisition equipment, the manufactur-
`er will have to be called for service or sup-
`port. This important factor should not be
`overlooked. One good way to evaluate com-
`panies in this regard is to pose some good
`hard application questions to them before
`buying. Another method is to ask for and
`follow up on references.
`
`SELECTING A DATA ACQUISITION BOARD
`
`To match application requirements to data
`acquisition boards, first collect the literature
`on likely candidates. Then consider each of
`the aforementioned factors in the order of
`
`their importance to the application at hand,
`discarding candidates that do not meet the
`requirements. The list of candidates will nar-
`row to two or three by the time this process is
`finished. If this is the case, consult a col-
`league if possible on the relative merits of the
`remainingcandidates. Review the list one
`more time, rating each Candidate on each
`factor with a score of 1 to 10, and then total
`the scores. -The highest final score wins!
`Frederick A. Putnam
`
`DATABASE DESIGN, AUTOMATED
`
`A database system is a collection of related
`records stored in a manner that makes the
`
`storage and retrieval of the data very effi-
`cient. The four well—known data models for
`databases are the hierarchical, network, rela-
`tional, and object—oriented models.
`The oldest of these models, the hierar-
`chical model, was established out of necessi-
`
`ty in the early 1960s without any prior
`formal study or definitions. Theoretically,
`the many-to-many relationship type be-
`tween records (as when a student takes many
`courses and a course has many students) is
`not permitted in the hierarchical model. The
`IMS Data Base Management System (DBMS)
`package is the oldest and most dominant
`hierarchical DBMS package.
`The network model is the product of
`the Database Task Group Committee
`(CODASYL 1975). Its first version appeared
`in 1961. This model permits all different
`types of connectivity: one—to—one, one—to-
`many,
`and many—to-many
`relationships
`(through the composition of two one—to-
`many relationships). Some network database
`packages are IDMS and IDMS/R of Cullinet
`Software,
`IDS of Honeywell, DMS II of
`Unisys, DBMS 10 and 11 of Digital Equip-
`ment, and Image of Hewlett—Packard.
`
`
` 4
`
`
`
`DATABASE DESIGN, AUTOMATED
`
`231
`
`The theoretical foundation for the rela-
`
`tional database model was established by E.
`F. Codd in 1970 (Codd 1970). In this model,
`information is stored in a two-dimensional
`
`table called a relation. Each column repre-
`sents a field of the record and is called an
`
`attribute. Each row of the table represents a
`data record of the file and is called a tuple.
`All the elements of the table must be simple.
`In other words, no element of the table can
`be a table on its own. The reservoir from
`which the values of an attribute are drawn is
`
`called the domain of that attribute. A process
`called normalization is used for grouping
`information in these tables so that duplicate
`values of attributes are eliminated. These
`tables are constructed in such a manner that
`
`1. All the requirements of the client for
`whom the system is designed are satisfied.
`
`2. The relationship between attributes
`within a table or between attributes of differ-
`ent tables or between tables themselves en-
`ables the user to add new data to the data-
`bases or to delete data from the databases or
`
`to update data without causing any anomaly
`(inconsistency) within a database.
`
`Some well—known relational database
`
`packages are DB2 of IBM; Ingres of Rela-
`tional Technology; Oracle of Oracle, Inc.;
`Unify of Unify, Inc.; dBASE of Ashton—Tate;
`Rdbase 5000 of Microrim; Informix of In-
`formix Software, Inc. ; and Paradox of Borland,
`Inc.
`
`The object—oriented data model uses the
`concepts of entities and objects. An object is
`a representation of an entity in the database
`system environment. An entity has an infi-
`nite number of properties, but an object will
`take only a finite subset of these properties to
`represent the entity in the system. An object
`encapsulates both the data and the opera-
`tions that can be performed on them. The
`operations are known as methods. Some
`examples of object-oriented database pack-
`ages are Vbase Integrated Object Oriented
`System of Ontologic,
`Inc. ; GEMSTONE/
`OPAL of Serviologic; and ORION of Micro-
`Electronic and Computer Technology Corpo-
`ration.
`
`In database terminology a record type
`
`means a file. In relational databases, record
`types are called relations, and fields are
`known as attributes. The record types in
`object—oriented databases are called objects,
`and the fields are called properties. In gener-
`al, a file has one or more candidate keys.
`Each candidate key is a field or a group of
`fields that identifies a unique record within
`the file. Any of the candidate keys can be
`chosen as the primary key of the file; thus the
`primary key of a file identifies a unique
`record of the file. A foreign key is a field or a
`group of fields within a file that
`is the
`primary key of another file. The primary key
`is used to access a specific record from a file,
`and the foreign keys establish the links be-
`tween different files.
`
`system
`database management
`A
`(DBMS) is a software package. Its main func-
`tions are (1) to provide the facility to set up
`the database, (2) to retrieve and store source
`data (actual data in the database),
`(3)
`to
`retrieve and store the data about the struc-
`
`ture of the database (data dictionary), (4) to
`provide the facilities to enforce security
`rules, (5) to back up the database, and (6) to
`control the concurrent transactions so that
`
`one user's environment is protected from
`others.
`
`DATABASE DESIGN
`
`Before discussing automated database de-
`sign, it is essential to understand the mean-
`ing of database design and the processes
`involved. Basically, database design means
`identifying all the needed files, the fields of
`their records, and all candidate and foreign
`keys. Databases, like any other software sys-
`tem, have their own software design life
`cycle. The process involved in the design of
`database systems are:
`
`1. Analysis of the required informa-
`tion. In this phase, like any other software
`system, a precise definition of the problem at
`hand is established from interviews and ex-
`amination of the organizational documents.
`Also in this phase, the description of the
`system constraints,
`requirements, queries,
`transactions, and needed reports are ex-
`pressed in short, concise sentences, usually
`
`
` 5
`
`
`
`DATABASE PROGRAMMING
`
`[See also Data; Database Design, Auto-
`mated.]
`
`For Further Reading
`Date, C. J. 1990. An introduction to database
`systems, 5th ed., vol.
`1. Reading, Mass.:
`Addison-Wesley.
`Elmasri, R., and S. Navathe. 1989. Fundamen-
`tals of database systems. Redwood City,
`Calif.: Benjamin Cummings.
`Korth, H., and A. Silberchatz. 1986. Database
`system concepts. New York: McGraw-Hill.
`Ozkarhan, E. 1990. Database management,
`concepts, design and practice. Englewood
`Cliffs, N .].: Prentice—Hall.
`Ullman, J. D. 1989. Principles of databases and
`knowledge-base systems, vol.
`I. Rockville,
`Md.: Computer Science Press.
`Farshad Fotouhi
`
`DATABASE PROGRAMMING
`
`the years, programming languages
`Over
`have increasingly isolated the user from the
`inner workings of the computer and its oper-
`ating system; database programming partial-
`ly isolates the programmer from the details
`of data management by applying appropri-
`ate rules to the data handling, thus partially
`automating that part of the programming
`task.
`
`Databases are large, usually complex
`lists of facts and information; they usually
`contain regular arrangements of text and
`numbers, but modern databases, especially
`on personal computers, can contain video
`images (still or moving), sounds, large bodies
`of text, or combinations of all these elements.
`Many types of data fit best into data-
`bases; today, most telephone directories, li-
`brary card catalogs, airline flight guides, and
`bibliographic references are kept in database
`forms, as are conventional databases con-
`taining accounting information, mailing lists,
`and the like.
`
`Although you can still get many refer-
`
`ence works in paper, or "hard copy,” locat-
`ing the data in a large volume requires
`elaborate indices, which are both tedious
`and expensive to prepare and keep up—to—
`date. A database on a computer, on the other
`hand, can easily be re—indexed whenever the
`underlying data are changed;
`in fact,
`this
`tedious and complex task is automatically
`handled by the database management sys-
`tem whenever the data in the database are
`
`changed.
`The craft of data management dates
`back to Aristotle, the Greek philosopher, and
`the scheme of interlocking knowledge classi-
`fications he expounded in his Physica. Auto-
`mated data storage and retrieval first ap-
`peared in the 1880s when the Jacquard loom
`was developed; the loom could weave intri-
`cate patterns under the control of programs
`recorded on punched cards. The use of
`punched cards as a general-purpose data
`storage medium was further developed by
`Herman Hollerith. His card—sorting device, a
`precursor to the modern report generator,
`was used in the 1890 census.
`
`Over the years, data storage has come a
`long way, from the Hollerith cards to mag-
`netic tape , (with the data usually still
`in
`I-Io1lerith’s"format) to massive modern data-
`bases stored on disk. Many modern data-
`bases are huge and complex, but the data
`input and inquiry programs make it relative-
`ly simple to use the data in them without a
`great deal of computer knowledge. When
`you call an airline's reservations agent, a
`special
`type of report generator tells the
`agent what seats are available on what flights
`and at what prices (see also AIRLINE RESERVA-
`TION SYSTEMS).
`In discussing database programming, it
`can be helpful to distinguish between the
`database management system (DBMS) and
`the database programming language (DBPL).
`The DBMS performs the task of manipulat-
`ing the data under the control of the DBPL.
`In many cases, however, the DBMS and the
`DBPL are integrated, and presented to the
`user or programmer as a command line or
`prompt at which one can type various com-
`mands to manipulate the chosen data.
`The permissable commands
`include
`both ad hoc commands,
`like LIST ALL
`
`
` 6