Relational Data Modeling and How Some Things Never Change

Edgar F. Codd developed the Relational Data Model in 1970. It is a model that helps to manage data and it has remained unchanged since then. In fact, experts like Abhishek Gattani believe it is still the most beautifully designed model in existence, which is why he still employs it today. It is set on mathematic theory and predicate logical, and helps in the efficient management of data.

People like Gattani implement these models into databases where they see a table relationship. Rows represent a tuple and columns represent an attribute. The column's name (city, name, identifier, etc) is the attribute name, and the attribute value is added in that row and column's intersection. In so doing, a constraint is applied and the schema becomes logical. Gattani uses Codd's model in OLAP and OLTP systems, which means he uses them in analytical modeling, but also in relational modeling.

Relational Data Model Concepts

Relational data model concepts are used in relational algebra operations. Its fundamental concepts are:

  • Domain, or D, which is the atomic values' original set, forming the basis of model data. This refers to the unique values within the domain that cannot be divided under the relational method.
  • Relation, or the relation state, which is the Cartesian product's subset in which a domain list is included by name. In a way, the relation is like a table in which every row is a tuple of values and every column has attributes.
  • Attribute, which refers to the column, which is named. The name has to be meaningful and easy to understand and every attribute also has to be associated to a domain.
  • Relation schema, or R, which is a full list of attributes. The relation is a numerical value that shows how many attributes there are in its schema. The relation's cardinality is the relation's number of tuples.

Terms Used in Relational Data Models

For Gattani, understanding the jargon is very important. Unfortunately, complex data modeling requires complex languages, and this is something that makes it harder to understand for others. The most important terms used within Codd's relational model are:

  • The candidate key, which is a single field or can be a combination therefore. The candidate key uniquely identifies a certain record. It can never hold a null value and whatever value it does include should be 100% unique.
  • The primary key, which is the unique identifier of the record in the candidate key.
  • The foreign key, which is a type of primary key but retrieved from a different table. Again, it helps to identify a specific record, and it shows what the relationship is between different tables. The foreign key can be represented by a null value (when there is no relationship).
  • Constraints, which are pre-defined logical rules that ensure the data is consistent and that stops certain operations from occurring.

Codd's model is suitable for:

  • Studying the constrain/relationship/data theory.
  • Designing a variety of databases.
  • Reading SQL.
  • Developing modern systems of database management.