The procedure to design a database starts with an analysis of what information the database must hold and what are the relationships among elements of that information. Often, the structure of the database, called the database schema, is specified in one of several languages or notations appropriate for expressing designs. After proper consideration, the design is committed to a form in which it can be input to a DBMS, and the database takes on physical existence.
In this blog, we shall use a number of design notations. We begin in this section with a traditional and popular approach called the "entity-relationship" (E/R) model. This model is graphical in nature, with boxes and arrows representing the necessary data elements and their connections.
In "The Relational Data Model" we turn our attention to the relational model, where the world is represented by a collection of tables. The relational model is restricted to some extent, in the structures it can represent. Though, the model is very simple and useful, and it is the model on which the main commercial DBMS's depend today. Often, database designers start by developing a schema using the E/R or an object-based model, then translate the schema to the relational model for execution.
Other models are covered in "Other Data Models". In "Introduction to ODL", we shall introduce ODL (Object Definition Language), the standard for object-oriented databases. Next, we see how object-oriented ideas have affected relational DBMS's, yielding a model often called "object-relational".
"Semistructured Data" introduces another modeling approach, called "semistructured data". This model has an extraordinary amount of flexibility in the structures that the data may form. We also discuss, in "XML and Its Data Model", the XML standard for modeling data as a hierarchically structured document, using "tags" (like HTML tags) to indicate the role played by text elements. XML is an important embodiment of the semistructured data model.
The above figure gives an idea how the E/R model is used in database design. We begin with ideas about the information we want to model and render them in the E/R model. The abstract E/R design is then converted to a diagram in the data-specification language of some DBMS. Most commonly, this DBMS uses the relational model. If so, then by a moderately mechanical procedure that we shall cover in "From E/R Diagrams to Relational Designs", the abstract design is converted to a solid, relational design, called a "relational database schema".
It is to be noted that, while DBMS's sometimes use a model other than relational or object-relational, there are no DBMS's that use the E/R model directly. The reason is that this model is not adequately good match for the efficient data structures that must underlie the database.
- relational model
- Set Operations on Relations
- Relational Algebra
- Document Type Definitions
- XML and Its Data Model
- Semistructured Data
- From ODL Designs to Object-Relational Designs
- Nested Relations
- The Object-Relational Model
- What If There Is No Key
- Representing ODL Relationships
- Representing Other Type Constructors
- Representing Set-Valued Attributes
- Nonatomic Attributes in Classes
- From ODL Designs to Relational Designs
- Declaring Keys in ODL
- Review of Object-Oriented Concepts
- Other Data Models
- Relationships Among Normal Forms
- Decomposition into Fourth Normal Form
- Third Normal Form
- Projecting Functional Dependencies
- Computing the Closure of Attributes
- Rules About Functional Dependencies
- An Object-Oriented Approach
- Handling Weak Entity Sets
- From E/R Relationships to Relations
- From Entity Sets to Relations
- From E/R Diagrams to Relational Designs
- Equivalent Representations of a Relation
- Tuples / Domains
- The Relational Data Model
- Summary of The World of Database Systems
- Information Integration Overview
- Database System Implementation
- Database Programming
- Database Design
- Transaction Processing
- Overview of a Database Management System
- Information Integration
- Multimedia Data
- Client-Server and Multi-Tier Architectures
- Parallel Computing
- Smaller and Smaller Systems
- Relational Database Systems
- Corporate Records
- Banking Systems
- Airline Reservations Systems
- Early Database Management Systems
- The Evolution of Database Systems
- The Worlds of Database Systems