>>
You're reading...
Oracle

NoSQL !! Not Only SQL

 

It was not before I heard of murmurs of Big data in the database glossaries that I heard of NoSQL databases. Almost all the Web 2.0 companies and big guns in the industry are diverting their radar on RDBMS alternatives. NoSQL is an unplanned product of all such researches and explorations. Started for something, did something and found something in the form of NoSQL. I am not in a criticizing tone but I am trying to defend the capabilities of RDBMS, which of course and perhaps would not be overshadowed by the scaling out features of NoSQL.

I thought it would be might of help to the community to pen down my findings on the topic. Its not complete but the findings are still in alive mode.

NoSQL: The Concept

The NoSQL Database is a new infant in the database world. The concept evolved in 2009 as the outcome of brainstorming done in the area of high volume storage. NoSQL provides a database model which doesn’t complies neither with the relational model of database nor with the ACID features of the database language. By name, it appears as a counter of SQL language, but its a myth. Both SQL and NoSQL can coexist in a system and share no relation between them. NoSQL stands for Not Only SQL.

By virtue of its violation of basic database features, NoSQL cannot be referred as the database by soul, but it appears just as a data store or repository where the acmodel is majorly need oriented. Till date, there are more than 160 NoSQL databases available in the market. The major users of NoSQL database model are Facebook, Linkedin, Twitter, Google and Amazon.

NoSQL offers a flexible database model which can be accessed and monitored from middle tier. It has no specific language of its own (unless UnQL comes in). One of the most famous model is key value pair model. Other model can be document centric, graphical, tabular, column oriented and object databases.

The Need

The basic idea after the NoSQL evolution is to design a distributed data store with large scale data flow. The WEB2.0 platform discovered new attributes of data access. The web data is not only read only but the readers are also allowed to interact with the web data. Subsequently, the web data generates huge traffic and the data size increases steeply. This exponential growth of industrial data (mostly from social media and search engines) require massive scalability, low latency and data on demand facility in a simplified database model.

The relational database worked well with the information storage philosophies but failed to justify the revolutionary growth of data in the current times. In addition, the relational database system provides a non distributed, vertically scalable, schema oriented and licensed platform for data management activities. NoSQL on the other hand, is an open source, non relational, distributed and horizontally scalable database system which can withstand high volume of mixed-up data with low latency but high availability.

NoSQL Features

The major accomplishments of NoSQL database are

  • Distributed architecture allows the implementation of replication mechanism to ensure consistent and unbreakable data flow
  • Horizontally scalable ensures that new server nodes can be added, if required to enhance the performance and efficiency. Note that RDBMS has no such property to scale horizontally.
  • Not schema dependent and non relational. Data storage paradigm is flexible as per the developer. In addition, there are no tables, constraints, join or relations to deal with. It completely behaves as a data store.
  • Compliance with BASE (Basically Available, Soft state, Eventually consistent). The BASE model talks more on the data availability and replication consistency of master servers. “Basically available” implies that the data must always be available partially and progressively after a transaction. The data consistency in NoSQL is not stringent as in RDBMS i.e. the data remains in soft state. It may or may not be readily available as soon as the transaction gets over. There is a scope of small amount of latency in the availability. Such degree of data consistency is best suited for social media and not finance sector. Thus, the data is eventually consistent but not instantaneous.
  • Complies with the Consistency and Partition tolerance of CAP theorem. CAP theorem states that a database model must obey anyone of Consistency, Availability or Partition tolerance. Note that conventional RDBMS compiles with Consistency and Availability.
  • Ability to store huge amount of structured or semi structured data and its retrieval
  • Not much technical expertise required
  • Less maintenance and administration overheads

As a new database in the industry, the NoSQL database received mixed responses. The database users who were loyal to relational model rejected the need oriented approach of this database. On the other hand, the people who were facing capacity issues with RDBMS readily adopted the NoSQL database. It was in 2009 when NoSQL started competing with RDBMS.

NoSQL categories

Key-Value stores – Based on Amazon’ dynamo.

  • Columnar Family stores
  • Document database – inspired by Lotus Notes. Mainly for document centric and semi structured data
  • Graph database

NoSQL examples

Here are some pioneer and famous NoSQL databases used by the companies dealing with huge volumes of data.

I shall be back with more findings as they find me.

 

 

 

Advertisements

About Saurabh K. Gupta

Database Enthusiast, Author, Speaker and blogger

Discussion

4 thoughts on “NoSQL !! Not Only SQL

  1. Hey There. I found your blog using msn. This is a really well written article. I will be surely read more of your useful information. Thanks for the post.

    Posted by Wroby z betonu | August 15, 2012, 7:15 am
  2. Nice site over here! I’ll just wanna thank you for that.

    Posted by Anne T | August 23, 2012, 12:51 am
  3. Its very well written; I love what youve got to say.

    Posted by Karnam Lodi | August 23, 2012, 10:38 pm
  4. Smart, but interesting, as are many of your pages. I read through the past entries over the past week
    or two, and I must say I think I’m found a new favorite.

    Posted by Saroj Goswami | September 15, 2012, 9:49 am

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Saurabh K. Gupta

Saurabh K. Gupta

Database Enthusiast, Author, Speaker and blogger

View Full Profile →

Twitter Profile

Advanced Oracle PL/SQL Developer’s Guide – Second Edition

Advanced Oracle PL/SQL Developer's Guide - Second Edition

Oracle Advanced PL/SQL Developer Professional Guide

Oracle Advanced PL/SQL Developer Professional Guide

Disclaimer

SBHOracle is an independent blog and all the posts are based on my self experience and hands on with the technologies. It shares no relations with any of my current projects or from those in the past.

Enter your email address to follow this blog and receive notifications of new posts by email.

Join 780 other followers

SbhOracle Blog stats

  • 74,430 hits
Aggregated by OraNA
%d bloggers like this: