The following article is a general introduction to the subject of non-relative databases. The potential areas of application of NoSQL and their benefits are presented.
Finally, individual data models are listed, which will be discussed in more detail in Part 2 of this article.
Non-relational databases (also called NoSQL databases) include a wide range of different technologies that have been developed in response to the requirements of creating modern applications.
The data structures used by NoSQL differ from those commonly used in relational databases, making some of their operations faster. They are also seen as more flexible.
The choice of a specific solution in terms of the NoSQL data model depends largely on the problem it has to solve.
Many of the non-relative databases are inconsistent (in the sense of the CAP statement) with respect to greater data availability (throughput). They also do not offer low-level query languages (e.g. they do not allow ad-hoc connections between tables, as opposed to SQL), nor do they have standardized interfaces.
Non-relative databases work best under the following conditions:
- Downloading and storing vast amounts of data
- The relationship between the stored data is not very important
- Data that are time-varying and unstructured
- No need to handle limitations and connections at database level
- Data that are constantly growing and require regular scalability of the database
Korzyści wynikające z użytkowania nierelacyjnych bazy danych
Compared to relational databases, NoSQL databases are more scalable and provide better performance. It is also worth mentioning that their data model supports a number of solutions that the traditional relational model cannot cope with:
- Large amounts of rapidly changing, partly structured and unstructured data
- Agile project management methodologies; iterative, incremental software development model
- Object-oriented programming – flexible and user-friendly
- Geographically dispersed, scaled architecture instead of expensive, monolithic
Different types of non-relative databases
Due to the data model, non-relative databases can be divided into several categories:
This article gives general knowledge about NoSQL databases, their characteristics and the categories they fall into.
In the next article, each of the individual types of non-relative databases will be presented in detail, together with a sample data model, a concrete implementation, as well as representative advantages and disadvantages.
- P. J. Sadalage, M. Fowler, ?NoSQL Kompendium wiedzy?, Helion 2015
- A. Wójcik, ?Nierelacyjne bazy danych?, Zeszyty Naukowe WSEI 2014
Autor: Artur Pasik, Performance/Automation Test Engineer