Four generations of traditional DB systems: file system, hierarchical,
CODASYL, and relational.
All are designed for business applications: inventory, employee,
university, bank, library, air-line reservation systems, etc.
Common features of `traditional' applications:
Uniformity: large number of similarly structured data items, all of which
have the same size,
Record orientation: the basic data items consist of fixed-length records,
Small data items: each record is short,
Atomic fields: fields within a record are short and of fixed length.
There is no structure within fields. The 1st normal form holds.
Short transactions: within fractions of a second. There is no human
interaction with a transaction during its execution.
Static conceptual schemes: The database scheme is changed infrequently.
Only simple changes are allowed, e.g., in relational systems: create relation,
remove relation, add/remove attributes to/from a relation scheme.
Tasks: A CAD database stores data required pertaining to an engineering
design, including the components of the items being designed, the
inter-relationship of components, and old versions of designs.
Computer-aided software engineering (CASE): A CASE database stores
data required to assist software developers, including source code,
dependencies among software modules, definitions and uses of variables,
and the development history of the software system.
Multimedia databases: A multimedia database contains spatial data,
audio/video data, and the like. DBs of this sort arise from geophysical
data, voice mail systems and graphics applications.
Office Information Systems (OIS): Office automation includes
workstation-based tools for document creation and retrieval,
tools for maintaining appointment calendars, and so on.
An OIS DB must allow queries pertaining to schedules, documents,
and contents of documents.
Hypertext databases:
Hypertext is text enriched with links that point to other documents,
e.g., WWW.
Hypertext documents may also be structured in specific ways that help
index them.
Hypertext database must support the ability to retrieve documents
based on links, and to query documents based on their structure.
Expected Features for New Applications
Complex objects: A complex object is an item that is viewed as a
single object in the real world, but that contains other objects
(with an arbitrary complex internal structure). Often objects are
stored hierarchically, representing the containment relationship.
This leads to object-oriented DBs and nested relational DBs.
Behavioral data: Distinct objects may need to respond in different ways
to the same command. For example, the deletion of certain tuples may
require to delete other tuples in the case for weak entities. In CAD and
CASE applications the behavior of different objects in response to a given
command may be widely different. This behavioral information can be
captured by storing executable code with objects in the database. This
capability is provided by the methods of OODBs and by the rule
base of KB systems.
Meta knowledge: General rules about the application rather than specific
tuples (i.e., data about data) form an important part of expert databases.
Long duration transactions: CAD and CASE applications involve human
interaction with the data. ``what-if'' modifications that the user may
wish to undo, concurrent designer efforts that may lead to conflicts
among transactions. Important concepts: nested transactions, correct,
nonserializable executions.