Search⌘ K

Classification Based on Data Model

Learn about relational, hierarchical, network, document, and dimensional data models.

There are five types of DBMS based on their data model, as we list below:

  • Relational

  • Hierarchical

  • Network

  • Document

  • Dimensional

Relational data model

The relational data model, proposed by E.F. Codd in 1970, is the most widely used DBMS.

A relation (or table) is a collection of data elements organized in a tabular format of rows and columns.

User Relation

User ID

First Name

Last Name

Gender

1

John

Doe

M

2

Allan

Ken

M

3

Joe

Kim

M

Let’s define the different elements present in this table:

  • Tuple: A tuple represents an individual entry in the table. These are a collection of properties representing a single real-world entity. For example, in the table above, each row is a tuple representing a user.

  • Attribute: Attributes are the properties of a tuple. User ID, First Name, Last Name, and Gender are the user attributes in the table above.

  • Data Type: A data type represents the type of stored attribute value and the mathematical, logical, and relational operations allowed on it.

    • *The data type of User ID is an integer.

    • The data type of First Name, Last Name, and Gender is a string.

  • Degree: Degree is the total number of attributes in a tuple. The degree in the table above is 4.

  • Cardinality: Cardinality is the total number of tuples in a relation. The cardinality in the table above is 3.

  • Relation key: A relation key is an attribute that can uniquely identify a tuple. In the table above, User ID is the relation key.

  • Relational schema: A relational schema is a blueprint of all the attributes and their corresponding data types, which every tuple must abide by to be part of the relation.

  • Relationship constraints: The relationship constraints establish the relationship between two or more entities through common attributes.

The data model expresses a declarative method for storing, accessing, and manipulating tuples. ...