Various types of databases exist, each providing a different way to manage data storage. Some of the most popular in use today include relational databases, but there are also some lesser-known types of database systems.
In this post, find all types of databases in detail: from relational databases to graph, document, key-value and more.
What are the different types of databases?
To discover more about ABCD or different types of databases, reach out to us today to schedule a 1:1 consultation or book a demo.
Most beginners in data management technology will be familiar with relational database management systems (RDBMS). These tend to dominate a large share of the market. In fact, DB-Engines rankings show that relational databases place in the top 4 most popular. Leading the list is Oracle, followed by MySQL, Microsoft SQL, and PostgreSQL.
There are numerous types of databases, however. Each has different approaches to handling data. Understanding what makes each unique and their various functions thus becomes crucial when choosing the best database system for your business. After all, what a global enterprise needs is going to be very different from the data management needs of nonprofits.
To help you get a better idea of how each system works, join us for this in-depth guide on different types of databases from past to present.
What database systems came before the modern database?
The very early types of databases were limited in functionality. Take flat databases for example. In these, data was restricted to only textual formats and modest line length. They were mostly plain text files, and programmers had to define borders to mark the start of each new field. This made searching and navigating flat databases difficult. None of the fields shared any relational properties. They could handle small amounts of data, but they weren’t useful for data manipulation.
Then came hierarchical databases in the 1960s, first introduced to the market by IBM. This is when databases took on a new structure: a family tree with parent-child relationships. Individual items were limited to having only one parent, while parents were able to possess multiple children.
Relational databases would later follow along a similar concept, but not without first making it easier to organize complex data. This was the problem with the hierarchical structure; it did not work for all types of records.
In the 1970s, Charles William Bachman III proposed a solution to this: network databases. While maintaining the family-tree structure, Bachman’s model modified it to allow children the ability to also possess multiple parents. Nowadays, nobody talks about network databases, however. These are all but extinct, as most organizations have moved over to relational databases as soon as they appeared.
What is a relational database versus a non-relational database?
Today, relational databases encompass more than their share of the market. The term relational database can be attributed to Edgar F. Codd, who in 1962 was working for IBM. Codd developed a relational model of data around 12 rules. There are no commercial uses of this relational model which conform to all of these rules, however. Rather, now the term relational database is used to refer to a broader class of database systems with specific functions.
Well-known examples of RDBMS providers include MySQL, Microsoft SQL, and PostgreSQL. Notice something in common here? SQL (Structured Query Language) is the programming language inherent to all of these database systems. The majority of today’s relational databases require at least basic knowledge of SQL to operate. SQL makes data more portable, and it also has long-established standards in the world of programming.
With relational databases, companies store all data in tables comprising columns and rows. Rows correspond to individual record files, and columns for fields with data types assigned to it. Tables also have relational information that can be connected with primary keys and foreign keys.
Non-relational databases, on the other hand, are solutions for when companies need less structured data storage. It might be working with images, videos, or social media posts — all non-tabular data which calls for a non-relational database, which do not support SQL queries.
Types of non-relational databases
There are 4 types of non-relational databases (also, “NoSQL databases”). NoSQL databases are: document-oriented, key-value, graph, and column store databases.
Document databases
In comparison to all non-relational databases, document-oriented systems are in the widest use and demand. Document databases (sometimes, “document stores”) handle data in collections of documents, often using JSON, XML, or BSON formats. Records have no limits on the amount of data that you can store in them, and they can contain any type of data or data types.
Some leading names in document store solutions include MongoDB and Amazon DynamoDB.
Key-Value databases
Another popular type of database is the key-value DBMS. This non-relational database has records consisting of both a key and a value. Think of it like a dictionary, in which each entry is the “key”, while each “value” is the definition. Handling data this way is less complicated and resource-heavy, so developers often choose key-value databases when speed is a priority and the data is fairly simple.
This means that key-value databases tend to be more light-weight than relational databases. They also represent one of the easiest types of databases for embedding. In 2021, the leading examples of key-value DBMS include Redis, Amazon DynamoDB, and Microsoft Azure.
Graph databases
The next type of database includes graph-based DBMS. In these, there are two types of data: nodes (items in the database), and edges (definitions of each node’s relationship, also known as “graphs”). While similar to early network databases, graph databases allow for wider abstraction, such as what you can see from leading graph DBMS providers like Neo4J or Dgraph. These are most popular when companies need to prioritize not only relationships but also their analysis.
However, what graph database systems are lacking is a standard query language to access data. There is no universal approach, and SQL isn’t an option. This makes the languages across graph databases only relevant in a few cases, and not applicable across wider DBMS technology.
Column store databases
The final type of non-relational databases is the column store DBMS. Column store databases are also referred to as column family databases, or wide column stores. They aim to enable high performance with handling large amounts of data, effective data compression, and long-term scalability. Leading examples of column store DBMS providers worth looking at include Cassandra and HBase.
These databases acquire their name from the fact they store column families rather than the traditional schema of relational databases. Instead of a table, each column family consists of multiple columns and rows. Differing to relational databases, columns do not have to cover all of the rows, but rather the column is contained within a row. Rows can then be assigned to different columns, allowing for wider abstraction.
Other functions of column store databases include the ability to mark rows with identifiers such as names, values, and time stamps.
Different cases call for different DBMS solutions
In database management, what options are best for businesses varies from one enterprise to the next. Relational databases are currently the widest in use, but other types of databases are constantly growing to meet various demands.
At ABCD (A Better Community Database), our DBMS aims to help nonprofits and other social good organizations. Our simple, intuitive software requires no knowledge of SQL, and aims to simplify case management, program evaluation, and outcome tracking for NPOs. It also comes with no additional licensing fees along with the long-term security NPOs require.
To discover more about ABCD or different types of databases, reach out to us today to schedule a 1:1 consultation or book a demo.