Different types of databases and their characteristics
Introduction to Database Types: Understanding the Basics

I am working as freelancer. I am a experienced full stack web developer. My lovely stack is MERN but I am open for new tech. I love to work with teammates for achieve goals. I love researches to find specific new things.
Types of Databases
Databases are classified into various types according to their working criteria.
Centralized Database
Distributed Database
NoSQL Database
Cloud Database
Relational Database
Network Database
Object Oriented Database
Hierarchical Database

Centralized Database
An example of a centralized database is a central library of a university which contains a central database of each library in a college or university.

Advantages of Centralized Database
Manipulation of data will not affect the core data. It decreased the risk of data management.
It manages data in a central repository so data consistency has been maintained.
It provides better data quality, which enables organizations to establish data standards.
Disadvantages of Centralized Database
If any server failure occurs, entire data will be lost.
It increases the response time for fetching data due to its large size.
It is not easy to update such extensive databases.
Distributed Database
It is just the opposite of a centralized database. In this database, data is distributed among different database systems of an organization.
Examples of the Distributed database are Apache Cassandra, HBase, Ignite etc.

Distributed Database is divided into two parts.

Homogeneous DDB
Homogeneous database systems are those systems that execute on the same operating system and use the same application process and carry the same hardware devices.
Heterogeneous DDB
Heterogeneous Database systems execute on different operating systems under different application procedures and carry different hardware devices.
Advantages of Distributed Database
Server failure will not affect the entire data set.
It is expandable easily.
Relational Database
Relational database stores data in the form of rows(tuples) and columns (attributes), and together form a table(relation). A relational database uses SQL for storing, manipulating and maintaining data.
Examples of Relational databases are MySQL, Microsoft SQL Server, Oracle etc.

Properties of Relational Database
The common property of a relational model is known as ACID, where:
A means Atomicity:
It follows the 'all or nothing' strategy. For example, a transaction will either be committed or aborted.
C means Consistency
If we perform any operation over the data, its value before and after the operation should be preserved. For example, the account balance before and after the transaction should be correct.
I mean Isolation
For example, when multiple transactions occur at the same time, one transaction's effects should not be visible to the other transactions in the database.
D means Durability
It ensures that once it completes the operation and commits the data, data changes should remain permanent.
NoSQL Database
It is not a relational database as it stores data not only in tabular form but in several different ways.

NoSQL database can be divided into four parts.

Key-value storage
It stores every single item as a key (or attribute name) holding its value, together.
Document-oriented Database
A type of database used to store data as a JSON-like document. It helps developers in storing data by using the same document-model format as used in the application code.
Graph Databases
It is used for storing vast amounts of data in a graph-like structure. Most commonly, social networking websites use the graph database.
Wide-column stores
In this type of database, the data is stored in larger columns together, instead of stored in rows.
Cloud Database
A type of database where data is stored in a virtual environment and executes over the cloud computing platform. It provides users with various cloud computing services (SaaS, PaaS, laaS etc.) for accessing the database.

There are numerous cloud platforms, but the best options are:
Amazon Web Service(AWS)
Microsoft Azure
Kamatera
PhonixNAP
ScienceSoft
Google Cloud SQL
Object-oriented Database
The data is represented and stored as objects which are similar to the objects used in the object-oriented programming language.

Hierarchical Databases
It organizes data in a tree-like structure. Data get stored in the form of records that are connected via links. Each parent record can have multiple child records.

Network Database
The representation of data is in the form of nodes connected via links between them. Unlike the hierarchical database, it allows each record to have multiple children and parent nodes to form a generalized graph structure.

Personal Database
Collecting and storing data on the user's system defines a Personal Database. This database is designed for a single user.



