Evolution and Properties of Relational Database Models
Evolution of Relational Database Systems (1980-1990)
- Development of large relational systems – SQL commercial.
- Development of application generators.
- Distributed systems.
- Client/server structure (visual languages).
- Object-oriented relational model.
New Data Representation Models (1980-1990)
- Problems in the relational model: The semantics of complex items are poorly reflected.
- Connection of existing data with information in the DB.
- “Intelligent” unified representation of rules and data, knowledge bases, intelligent information.
- Existence of databases with unstructured information = BD documentaries information retrieval systems.
New Challenges (1990-2000)
- New applications:
- Treatment of large volumes of image data.
- BD for Assistance Systems Design.
- The collection of information produced.
- BD that support complex information.
New Challenges:
- Multimedia technologies BD.
- Heterogeneous problems.
- Management consultation imprecisely expressed.
- Start new ways of accessing the information (data mining).
Relational Model
Created by Codd:
- Represents data in tables or relations, based on mathematical foundations which gives strength to the operations performed on relations.
Components:
- Data Structure: Data are organized as relations.
- Data Manipulation: Powerful language such as SQL is used to manipulate the data stored in the relationship.
- Data Integrity: Ease to maintain the integrity of the data when these without manipulation.
Properties of Relations
- The intersection of each row and column is atomic; this implies that there can be no repeating groups.
- Columns must have the same domain.
- Each row is unique, guaranteed by the existence of the primary key, which is unique for all occurrences.
- Each column has a different name, and the column order is unimportant.
- The order of rows is irrelevant.
- Relationships must be well-structured, meaning they contain minimal redundancy and can perform insertion, modification, and deletion without generating errors or inconsistency, also called “anomalies”.
Relational Model Details
- A tuple is defined as the set of values that make up a row in a relationship.
- A tuple is equivalent to the occurrence of a record within a file. An n-tuple is a tuple composed of n domains, where n is the degree of the relationship.
- A domain is the set of possible values for a column.
- Cardinality is defined as the number of tuples of a relation.
- A relational database is formed by a set of relations or tables, which are associated with each other through the columns that they have in common.
- Each tuple is composed of one or more domains.
- It is important to distinguish a domain of an attribute. A column or an attribute represents the use of a domain within a relationship.
- Each tuple in a relationship is unique and should be possible to define a primary key or identifier that would ensure this uniqueness.
- The process of manipulating a relational database is far simpler than in the 2 previous models. To represent data in a single form requires only one operator for basic function.
- rel / arctra = tuple-table-file-field domain registration