What is NoSQL
Now a days in IT Industry everyone is talking about NoSQL Databases. And most of them are not aware of what exactly NoSQL is where we can implement it. In this article I’m trying to explain about what is NoSQL Databases and how different they are from Relational Databases. In order to understand NoSQL I’ll put some light on Relational Database Model.
Key Elements in Relational Data Model is Entity/Table, Relationship and Attributes. We have two Entities/Tables here Customer and Order. Customer table which is composed with multiple attributes like CustId, Name, Address, City etc. and Order table is having attributes like Order ID, CustID, Data, Amount and Discount. There is one to many relations between customer and order as one customer belongs many orders.
Relational Model representation of standard structures of entities/tables which is followed across the database. And as we have structured data so we can use SQL Queries to manipulate the it.
If we look into NoSQL Databases they do not follow row and column concepts. Instead of rows and columns they do follow Rows with different column structure to individual rows as shown below
Here Customer & Order tables do not have standard structure as explain above but still they will be accommodate in same collection/table.
NoSQL Database is any database that is not relational Database. It’s not about saying that SQL should never be used, or that SQL is dead… NoSQL equal to “Not Only SQL”. NoSQL is predictable for some other complications other than storage solution. The movement of data can be fit nicely in NoSQL Databases like e-Mails, addresses, documents, user personalization data, friends and followers in social media, weblogs etc.
In current generation web apps have different needs than the applications that RDBMS were designed for like low and predictable response time (latency), Scalability & elasticity (at low cost!), High availability, Flexible schemas / semi-structured data, Geographic distribution centres. Web apps can (usually) do without transactions, strong consistency, integrity and complex queries where NoSQL comes in picture.
I will try to explain about emerging NoSQL categories in next article. Stay Tuned….
Sandip Shinde
Very good Article to give an clear picture about “What NoSQL Actually means?”.
This is really helpful to understand basic concept of NoSQL.
Tabular representation of examples are simply awesome. Keep posted
Excellent article ,helped to take the traditional RDBMS thinking to next level. Awaiting next topics on the same.
Very Helpful article…