Open In App

Difference between Relational model and Document Model

Last Updated : 10 Sep, 2024
Comments
Improve
Suggest changes
Like Article
Like
Report

The relational model organizes data into tables with rows and columns, ideal for structured data. On the other hand, the document model stores data in hierarchical documents, which offers more flexibility for managing unstructured or semi-structured data. Both models serve different purposes in database management.

What is the Relational Model?

The relational model is a model for the management of the database. It is called so because the data is stored in the form of relations i.e., in the form of tables. Every row consists of related data. These rows in the table depict a real-world entity. To work with Python and the Relational data model we need a prerequisite knowledge of - SQL and Pandas. Panda is a library of Python

Advantages

  • It uses a predefined schema, which ensures data integrity.
  • Supports complex joins for querying related data.
  • Follows ACID properties, which ensures reliable transactions.

Disadvantages

  • It is Less suitable for hierarchical or unstructured data.
  • It is slower due to the need for complex joins and rigid schema.

What is the Document Model?

In the document model, the data is stored in the form of documents. The documents consist of the records which describe the actual data of the document. A nested document can be used to provide information about subcategories of the data. The document can also be used to represent real-world objects. 

Advantages

  • It Offers a dynamic schema, allowing for flexible data storage.
  • Generally faster for read and write operations due to its document-based structure.
  • Supports easy replication and horizontal scalability.

Disadvantages

  • Lacks support for complex joins.
  • Does not follow strictly to ACID properties, it follows the CAP theorem.

Difference Between Relational and Document Model

Relational ModelDocument Model
It is row-based.It is document-based.
Not suitable for hierarchical data storage.Generally used for hierarchical data storage.
It consists of a predefined schema.It consists a dynamic schema.
ACID properties are followed by this model. (Atomicity, Consistency, Isolation, and Durability).CAP theorem are followed by this model. (Consistency, Availability, and Partition tolerance).
It is slower.It is faster than Relational Model.
Supports complex joins.Does Not support for complex joins.
It is column-based.It is field-based.
They are vertically scalableThey are horizontally scalable
Fast replication support is not provided.They provide easy replication support
It is more used now-a-days to store data in database.It is comparatively less used.
To add attributes in a relational model, database schema needs to be modified for including additional columns and their data types.In a document-based database, you need to add additional key-value pairs in the document for representing new fields.

Conclusion

The relational model is in environments where data integrity and complex querying are most important, while the document model is for applications which require flexible, hierarchical data storage and rapid scaling.


Next Article

Similar Reads