Introduction
Databases are an organized collection of related data records. Database management systems manage and manipulate information inside a database.
There are many different approaches to storing and modeling data, resulting in various types of databases.
This article provides an in-depth overview of the different database types available.
Database Types
There are many different approaches to analyzing the different database types available. The table below provides a general overview of the various types currently available:
Based On | Database Types |
---|---|
Model | Relational Non-Relational (NoSQL) Object-oriented |
Location | Centralized Distributed |
Design | Operational (OLTP) Analytical (OLAP) |
Hosting | On-Premises Cloud |
Processing Power | Personal Commercial |
The various database types combine to create a specific environment. For example, a non-relational distributed commercial database describes the model, location and processing of the database respectively.
Note: For more information on the design and the difference between Operational (OLTP) and Analytical (OLAP), please visit our article OLTP vs. OLAP.
Database Model Types
The three general database types based on the model are:
2. Non-relational database (NoSQL)
The difference between the models is the way the information looks inside the database. Consequently, each model type has a different management system and data relationships.
Relational Database
The relational database model is the most extensively used as well as the oldest database type. The three critical components of a relational database are:
- Tables. An entity type with relations.
- Rows. Records or instances of an entity type.
- Columns. Value attributes of instances.
A relational database provides a set of data rows in response to a query. A query language, most commonly the Structured Query Language or SQL, helps create these data views.
Relational Database Features
The main features of a relational database are:
- ACID compliant. The database retrains integrity while performing transactions.
- Range of data types. Provides the capability to store any data as well as carry out complex queries.
- Collaborative. Multiple users are able to access the database and work on the same project.
- Secure. Access is limited or restricted through user permissions.
- Stable. Relational databases are well-understood and documented.
What are Relational Databases Used For?
Relational databases are the most implemented database type. There are many use cases, some of which include:
- Online transaction systems. The database supports many users as well as frequent queries needed in online transactions.
- IoT. Relational databases are lightweight and have the processing power needed for edge computing.
- Data warehouses. The critical component of the data warehouse architecture is storage. Relational databases are easily integrated and optimized for massive queries from multiple sources.
Most Popular Relational Databases
There are countless commercial as well as open-source databases. The top ten most popular relational databases are:
1. Oracle
2. MySQL
3. Microsoft SQL Server
4. PostgreSQL
5. IBM Db2
6. SQLite
7. Microsoft Access
8. MariaDB
9. Hive
10. Microsoft Azure SQL Database
Non-relational Database (NoSQL Database)
A non-relational database, or NoSQL ("Not Only SQL"), is a type of database that models and stores data differently from relational databases. Instead of tables, non-relational databases model relationships between data in an alternative way.
The 4 NoSQL database types are:
- Document
- Key-value
- Column based
- Graph
Non-relational Database Features
The main features of non-relational databases are:
- Flexible. Handling structured, semi-structured, and unstructured data is a breeze with non-relational database types.
- Scalable and responsive. Massive data storage scales well with on-demand servers and provides quick query responses.
- Zero downtime. High availability for minimal downtime due to near real-time data replication.
- Cloud compatible. The scalability of a cloud computing architecture incorporates perfectly with non-relational databases.
- Multiple data structures. Different information types, as well as multi-model database formats, are available.
Note: Learn everything you need to know about structured and unstructured data in our article Structured vs. Unstructured Data: Understanding Differences.
What are Non-relational Databases Used For?
Non-relational databases perform best with variable data structures and massive amounts of data. Some use cases include:
- Real-time systems. A non-relational database combines the operational and analytical database systems into one. Whether feeding operational data into Hadoop or serving analytics results from Hadoop, non-relational databases provide the agile real-time experience.
- Personalized experience. Elastic scaling accommodates the massive amounts of data needed for any customized experience.
- Fraud detection. High performance is vital in fraud detection. Non-relational databases are responsive and reliably meet the low latency requirements of financial systems.
Most Popular Non-Relational Databases
The ten most popular non-relational databases are:
1. MongoDB
2. Redis
3. Cassandra
4. HBase
5. Neo4j
6. Oracle NoSQL
7. RavenDB
8. Riak
9. OrientDB
10. CouchDB
Object Database
An object database similarly represents data to objects in object-oriented programming. The critical components of an object-oriented database are:
- Objects. The basic building blocks for storing information.
- Classes. The schema or blueprint for an object.
- Methods. Structured behaviors of a class.
- Pointers. Access elements of a database and establish relations between objects.
Object databases combine object-oriented programming concepts with database capabilities.
Object Database Features
The main features of object databases are:
- ACID transactions. All transactions are complete without conflicting changes due to ACID compliance.
- Transparent persistency. Object databases integrate seamlessly with object-oriented programming languages.
- Complex and custom data types. User-defined classes allow for custom as well as complex data types to exist.
- Accessible. Data is easy to save and retrieve.
- Easier modeling. Real-world problems and information are more closely related to objects, which makes complex problems easier to model.
What Are Object Databases Used For?
Object databases perform best with complex data types, where one entity includes a massive amount of information. Some everyday use cases for this database model type are:
- High-performance applications. Applications where fast data retrieval is vital to benefit from object databases since data is stored and retrieved as-is.
- Scientific purposes. Scientific data, as well as calculations, are complex. Storing complex information and quick retrieval find use in all kinds of scientific disciplines.
- Complex data structures. Due to permanent persistence with objects, database storage and expansion of complex data is accessible, eliminating the need to rework the database model.
Most Popular Object Databases
Currently, the top ten most popular object databases are:
1. DB4o
2. ObjectStore
3. Matisse
4. Gemstone/S
5. ObjectDB
6. ObjectDatabase++
7. Objectivity/DB
8. Versant
9. Perst
10. Jade
Database Types Based on Location
Database types also differ based on the physical location of the storage.
The two groups based on location are:
1. Centralized databases
Centralized Database
A centralized database is stored as well as managed in a single location. The information is available through a network. The end-user has access through the network to the centralized computer, where the stored information resides.
Centralized Database Features
The main features of a centralized database are:
- Data integrity. Keeping data in one location maximizes data integrity and reduces redundancy. Information accuracy and reliability are enhanced.
- Security. A single point of location provides only one access point, leading to increased data safety.
- End-user friendly. Data access, as well as updates, are immediate with a centralized database. A single database design provides simplicity.
- Cost-effective. The labor, power supply, and maintenance are all reduced to a minimum through a centralized system. The database is easier to maintain from an administration aspect.
- Data preservation. A fault-tolerant setup through disaster recovery solutions.
What Are Centralized Databases Used For?
The benefits of a centralized database are most noticeable with large institutions. Some use cases include:
- Enterprise management. Big organizations use centralized databases to get a better overview of all the information.
- Government data. Centralized databases are prevalent in government organizations. One access point ensures data security.
- Schools and universities. Educational institutions make use of centralized databases. The maintenance is cost-effective, and the information stays accurate.
Distributed Database
Distributed databases store information across different physical sites. The database resides on multiple CPUs on a single site or spread out across various locations. Due to the connections between the distributed databases, the information appears as a single database to end-users.
Distributed Database Features
The most exciting features of a distributed database are:
- Location independency. The physical location of the database spreads out across multiple sites.
- Query processing distribution. A complex query splits into multiple sites, which divides the tasks between different CPUs, reducing bottleneck.
- Distributed transactions. Multiple storage locations provide a distributed recovery method. Commit protocols exist in cases of numerous transactions.
- Network linking. The distributed databases interlink through a network where communication happens between the storages as well as with end-users.
- Seamless integration. Although not physically connected, distributed database parts connect into one logical database.
What Are Distributed Databases Used For?
Distributed databases work best in environments with many sectors where companies should limit the available information to reduce redundancy. Some examples include:
- Large companies. Most company sectors do not need a complete overview of data. Distributed databases help reduce the redundancy of data with individual departments.
- Global enterprises. Due to location independence, this database type fits well with companies with multiple sites.
Database Types Based on Design
The design of the storage depends on the business objective. There are two main approaches to database design based on the function are:
1. Operational (transactional) database
2. Analytical database
Although the databases serve a different purpose, incorporating the two together creates a data warehouse system.
Operational Database
An operational database manages and controls the fundamental operations within a business. The database is known as an online transaction processing or OLTP database. The data collected directly from the source in real-time, providing a view of daily transactions.
Operational Database Features
Operational databases have the following features:
- ACID compliant. Preserving the accuracy and integrity of each transaction is necessary for data organization.
- Fast processing. Operational databases require fast processing due to thousands of simultaneous requests.
- Small storage. Transactional information is only stored temporarily. Therefore, operational databases serve as a steppingstone before the data is archived.
- Regular backups. Collecting and storing data requires constant backups, making legal compliance an essential factor.
Analytical Database
Analytical databases provide a unified view of all data available within a business. A complete overview of information within a database is essential for planning, reporting, and making decisions. The database is known as an online analytical processing (OLAP) database.
Analytical Database Features
The features of an analytical database are:
- Distributed workload. The data comes from different operational systems distributed across nodes.
- Multi-dimensional. Enterprise information gains dimensionality through data aggregation and complex queries across databases.
- Query performance. Data denormalization improves query performance for time-intensive actions.
- Horizontal scalability. Analytical databases must scale out as the requirements for an enterprise to grow.
Database Types Based on Hosting
There are multiple hosting options for databases. The two places where an information system resides are:
1. On-premises databases
The notable difference between the two options is the availability of resources when the database deployment happens. For more information on how the two approaches compare, check out our article: On-Premise vs. Cloud: Which is Right for Your Business?
Note: Want the best of both worlds? Try our Bare Metal Cloud solution.
On-premises Database
An on-premises database resides in-house. All the software, infrastructure as well as administration needed for support is local. With large-scale enterprises, the storage grows to a local data center.
On-premises Database Features
The notable features of on-premises databases are:
- Security. Due to the infrastructure being in-house, on-premises databases are the best solution for storing sensitive information.
- Control. The enterprise is in complete control over the available information, providing a high level of regulation and privacy over the data.
- Compliance. Regulatory controls, such as HIPAA compliance, require knowing the location of sensitive data at any given moment.
Cloud Database
A cloud database is a hosting solution given by a third-party provider. The pay-as-go solution provides the database-as-a-service, avoiding the need to set up a data center physically. The agile approach minimizes the initial investments needed to acquire data space while quickly expanding as more resources are required.
Cloud Database Features
The best features of a cloud database are:
- Scalability. Cloud databases are flexible. Increasing or decreasing resources is quick due to virtualization.
- Management flexibility. The provider manages this database type, which in turn minimizes the management needed from the client. However, there are also options for outsourcing maintenance.
- Cost. With a cloud database, you only pay for what you need. The cost of investing in technical staff, as well as maintenance, is minimized.
Database Types Based on Processing Power
The database processing depends on the business model. Choosing the wrong level of a database system affects the workflow of an organization and team. Most database vendors offer multiple solutions to database processing. The two main ones are:
1. Personal database
2. Commercial database
Businesses leverage the power of both depending on the use case.
Personal Database
Personal databases have single-user access and process on low to medium-powered machines. Simpler database applications benefit from this database type due to the low cost and maintenance.
Commercial Database
A commercial database has multiple users with various permissions as well as numerous applications on high-powered machines. High availability commercial databases are costly and require constant maintenance as well as support.
Note: Learn more about databases by referring to our article What Is A Database?
Conclusion
You should have a clear idea of the different database types available and which one to use.
All database types have their respective usage domain. None of the database types are a replacement for a different kind of database, and using multiple systems provides versatility over data management.
To learn how to create, retrieve, update and manage data in a database, make sure to read our article DBMS - top 25 database management systems.