What are NoSQL Databases?
Relational databases management systems (RDBMS) store data in tabular form of rows and columns, and Structured Query Language (SQL) is the language that is used to access and manipulate data in relational databases. The rapid growth of data and the need for high availability, scalability, and performance in modern software applications have handicapped relational databases due to their design structure. SQL is the only way to access data from relational databases, and going through billions and trillions of records takes time. This is where non-relational databases play a vital role. Database management systems (DBMS) that do not use SQL to query databases are called NoSQL databases. NoSQL databases are also called non-SQL or nonrelational databases. NoSQL databases are not a single kind of database. NoSQL databases are various database technologies that allow data to be stored and managed in different formats without the use of SQL. Some of the databases use their own mechanism, API, and some use non-SQL languages. Non-relational databases have been in existence for decades, but the term “NoSQL” was coined by Carlo Strozzi in 1998 to name his lightweight Strozzi NoSQL open-source relational database. The database did not use SQL to access and manipulate data.
Advantages of NoSQL databases
With the growing amount of data and the need for real-time query responses, data analytics, and semantic algorithms, NoSQL databases have become a need today. NoSQL databases are more scalable and provide higher performance when dealing with high volumes of data. NoSQL databases also provide faster traversing and better semantic solutions. Relational databases have fixed schemas. The database schema must be created before data can be inserted into a relational database. Once a database is created and software applications are written, it’s not easy to change schemas. Changing schemas on relational databases may result in loss of data, broken applications, and heavy rewriting of software applications. Even changing a column type in a relational database can cause major issues to data and applications. What if the database is large, with trillions of records? NoSQL databases do not have predefined schemas, which makes NoSQL databases a perfect candidate for rapidly changing development environments. NoSQL allows developers to make changes on the fly without affecting applications. The major drawback of the NoSQL database is the learning curve and multiple APIs and methods to work with the databases. There is no unified single model like SQL to work with NoSQL databases. Each NoSQL DBMS offers its own API or library. NoSQL DBMS is also broken down into various types, such as a graph, document, column, and key value. Each of these DBMSs has a different architecture and concept to store and manage data.
Types of NoSQL Databases
NoSQL databases can be categorized into the following five major categories,
- Column
- Document
- Graph
- Key-value
- Object databases
1. Column Data Store
A column data store, also known as a column-oriented DBMS or columnar database management system, stores data in columns rather than rows. Relational database management systems (RDBMS) store data in rows and data properties as column headers. Both row-based and column-based DBMSs use SQL as their query language, but column-oriented DBMSs may offer better performance. Imagine you need to list all names from a table based on an ID; rather than going through all rows, you could just access a single column of the table.
Here are some of the key characteristics of column data store DBMS.
- Column store DBMS uses a keyspace that is like a database schema in RDBMS.
- Column store DBMS has a concept called a key family. A key family is like a table on RDBMS. The keyspace contains all the column families in a database.
- A column family contains multiple rows. Each row has a unique key called Row Key, which is a unique identifier for that row. While each row has a single Row Key, it may have multiple columns. Each column has a Name, Value, and TimeStamp fields.
- Each row can contain a different number of columns. All rows don’t have to have the same columns.
- Each column can contain multiple rows. All rows don’t have to have the same data.
- Column-oriented DBMS is often used in OLAP data operations. Some of the popular column-oriented DBMS include Bigtable, Apache HBase, MariaDB, Azure SQL Data Warehouse, Google BigQuery, IBM Db2, MemSQL, Microsoft SQL Server 2012 or later, and SAP HANA.


Damian MurrayPosted Jul 29, 2019, 8:29 PM
The link on the 4. What are Graph Database is incorrect
HughPosted Jul 28, 2019, 10:49 PM
As Yoda would put it: “There is another”: MarkLogic, and it’s not only a NoSQL database.It is also a graph database (RDF triple store), a powerful search engine and a data service API platform.It is the most secured, the only Common Criteria certified in the NoSQL spectrum. It’s JavaScript based: “all too easy”. It offers free training. #SoCool :-)
Bidyasagar MishraPosted Jul 28, 2019, 5:31 AM
I was looking for this
Rajanikant HawaldarPosted Jul 28, 2019, 3:20 AM
Well explained article