Relational and non-relational databases
This article discusses the rise of non-relational databases, the differences compared to relational databases, and the leading companies in each field.
RDBMS databases require strong data integrity which is controlled using constraints. They are well-documented and mature, with SQL standards that are well-defined, there is a large pool of qualified developers with experience, and they are ACID compliant. However they do not work well with unstructured or semi-structured data, they generally will not map one-to-one with an object or class representing the same data, and during migration schemas and types generally have to be identical. This has led to the emergence of non-relational databases due to increasingly complex web applications. The critical difference between the two types is the data in a non-relational database is schema agnostic, which accommodates unstructured and structured data with little to no constraints. Non-relational databases provide schema free more flexible data models, they can be scaled horizontally, are fault tolerant, and data can easily be distributed across different nodes. The downside is the lack of maturity means a need for specific expertise, and a range of formats and constraints that are specific to each database type. There are five big vendors in the RDBMS arena, but many in the NoSQL due to how new the field is. The author concludes the article with a small list of criteria to assist in deciding which database is the best database to use. For ACID compliance and to scale vertically RDBMS is better. For a massively distributed system or to scale horizontally, using a non-relational database might work better.
While this article is written to promote a specific product, I found it had relevant information regarding database systems. It provides a decent summary of the different types and vendors for non-relational databases, and the comparison between non-relational and RDBMS. It is interesting that the nomenclature “non-relational” database was a larger umbrella for the different types listed in the article. The descriptions of those different types really illuminate the complexity and variations found in this field. It underlines some of the reasons why 99% of all companies use RDBMS databases, and will continue to do so. This also helps emphasize how important it is to stay current in technology and keep technical skills constantly changing and evolving. Growth doubled, and will continue to increase as big data continues to evolve.
Reference:
Hammink, J. (2018) The Types of Modern Databases https://www.alooma.com/blog/types-of-modern-databases