Database Design   «Prev

Four Types of Database Models 1)relational, 2) OO, 3)hierarchical, 4)network

What are the standard database models?

The standard database models are:
  1. Relational model: A formal structure that organizes data into relations (i.e., tables).
  2. Object-oriented model: Object/relational database management systems (ORDBMSs) add new object storage capabilities to the relational systems at the core of modern information systems
  3. hierarchical model: A database model that organizes data in a top-down (inverted tree) structure.
  4. network model: An extension of the hierarchical model. (See hierarchical model.)

The major types of data models in the history of Databases are:

1) Relational Model

Relational Model organizes data into two dimensional arrays known as relations(tables) and each relation consists of rows and columns. Another major characteristic of relational model is that of keys, designated columns in a relation used to order data or establish relations.
Relational Model
1) Relational Model

2) Object Oriented Model

Object Model aims to reduce the overhead of converting information representation in the database to an application specific representation. Unlike a traditional database, an object model allows for data persistence and storage by storing objects in the databases. The relationships between various objects are inherent in the structure of the objects. This is mainly used for complex data structures such as 2D and 3D graphics which must otherwise be flattened before storage in a relational database.
Diagram of the Object Model
2) Diagram of the Object Model

OO Database

Evolution of Object Databases: Object oriented databases or object databases incorporate the object data model to define data structures on which database operations such as CRUD can be performed. They store objects rather than data such as integers and strings. The relationship between various data is implicit to the object and manifests as object attributes and methods Object database management systems extend the object programming language with
  1. transparently persistent data,
  2. concurrency control,
  3. data recovery,
  4. associative queries, and
  5. other database capabilities.

3) Hierarchical model

Hierarchical model contains data organized into a tree-like structure.
This supports parent-child relationships between data similar to a tree data structure where object types are represented by nodes and their relationships are represented by arcs. This model is restrictive in that it only allows one to many relationship (a parent can have many children but a child can only have one parent) An example of this is Jump to search IBM's Information Management System (IMS), which is a joint hierarchical database with extensive transaction processing capabilities.

4) Network Model

Network Model is similar to the hierarchical model in representation of data but allows for greater flexibility in data access as it supports many to may relationships.
Question: What are the characteristics of the Network Model with respect to databases? The Network Model is a database model that was developed as an evolution of the hierarchical model to address some of its limitations. It allows for more flexible and complex relationships between data records, representing them as a graph-like structure. The Network Model was standardized by the Conference on Data Systems Languages (CODASYL) in the late 1960s.
Here are some key characteristics of the Network Model with respect to databases:
  1. Record-based structure: Similar to the hierarchical model, the Network Model organizes data into records, which are similar to rows in a relational database. Each record consists of fields (attributes) that store the actual data.
  2. Sets: The relationships between records are represented as sets. A set consists of an owner record and one or more member records. Each set represents a one-to-many relationship between the owner and its member records. Unlike the hierarchical model, a record in the Network Model can be an owner in one or more sets and a member in multiple sets.
  3. Graph-like structure: The Network Model allows for complex relationships between records, forming a graph-like structure. This flexibility enables representation of more complex data relationships compared to the hierarchical model, which only supports tree-like structures.
  4. Pointers: The relationships between records in the Network Model are established using pointers. Each record contains pointers that refer to other related records, which allows for efficient navigation between records in the database.
  5. Navigational access: Data access in the Network Model is navigational, meaning that applications need to traverse the database structure, following pointers from one record to another, to access the desired data. This can be more efficient for certain types of data access patterns but makes querying the data more complex compared to the relational model, which uses a declarative query language.
  6. Data integrity: The Network Model supports referential integrity through the use of pointers and owner-member relationships. When a record is deleted, its related records can be automatically updated or deleted, maintaining data consistency.
  7. Complexity: The Network Model is more complex than the hierarchical model, as it requires managing pointers and understanding the relationships between records. This complexity can make it harder to design and maintain network databases compared to more modern, relational databases.

Although the Network Model provided more flexibility and improved data modeling capabilities compared to the hierarchical model, it has been largely replaced by the relational database model, which offers a more straightforward and powerful way to model and query data using declarative SQL.