0% found this document useful (0 votes)
42 views

No SQL

NoSQL databases were developed to address limitations of SQL databases in handling large, growing volumes of unstructured data across distributed systems. Unlike SQL databases, NoSQL databases come in various types oriented towards particular features like document, key-value, wide-column, or graph structures. NoSQL is useful for high-volume read/write access, easier scalability, or when eventual consistency is more important than ACID transactions. However, NoSQL should be avoided when ACID transactions are required, or when integration with existing reporting tools is needed. Popular NoSQL databases include MongoDB, Cassandra, HBase, Redis, and Riak.

Uploaded by

Saurabh Suman
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
42 views

No SQL

NoSQL databases were developed to address limitations of SQL databases in handling large, growing volumes of unstructured data across distributed systems. Unlike SQL databases, NoSQL databases come in various types oriented towards particular features like document, key-value, wide-column, or graph structures. NoSQL is useful for high-volume read/write access, easier scalability, or when eventual consistency is more important than ACID transactions. However, NoSQL should be avoided when ACID transactions are required, or when integration with existing reporting tools is needed. Popular NoSQL databases include MongoDB, Cassandra, HBase, Redis, and Riak.

Uploaded by

Saurabh Suman
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 4

Introduction:

NoSQL word is coined by Google engineers, contrary to general belief of Not Using SQL its stands for Not Only SQL. Although this technology is available since long (e.g. B-Tree) but rapid advancement in recent year made NoSQL as a standard word in technology stack.

A little history:

Why Another Database?? Most of the RDBMS are having problems huge, which in some cases can scale by (RAM, DISK, Clustering etc) but almost showing sluggishness as data grows. In solutions are available resulting cost when size of data is very adding computing powers all of them starts some cases when scalable is very high. In general

traditional RDBMS were initially designed work under memory, hard disk and network latency restriction but over the time technology landscape changed and now with high power computing resources, fast network and cheaper memory cost provided new packaging of old concepts.

Now the question is whether NoSQL database is capable enough to replace traditional RDBMS? Short answer is no at least in near future. However NoSQL out performs traditional RDBMS in few area where very large volume is required and system does not require ACID behavior but eventual consistency is more important.

Some cases where NoSQL database can be useful.


When high performance read/write is needed Easier and cheaper scalability Flexibility to store data Eventual consistency is more important than ACID transaction.

Types of NoSQL databases:

Unlike RDBMS, NoSQL databases comes in various types and these types are more focused towards a particular feature like Graphs databases are common in social networking. 1. 2. 3. 4. Document oriented (ex. MongoDB, CouchDB etc) Key-Value pair (ex. Redis, riak, etc) Tabular (Cassandra, Google Big Table etc) Graph (neo4j, sones etc)

Use cases:
The list below shows where NoSQL databases in general can be used, however the list is not exhaustive. 1. Archiving and Event Logging

a. Archiving of relational database is an option as there is no need for schema maintenance. b. Event Logging in most cases are not transactional in nature at the same time support for query mechanism is available. 2. Operational Data Store a. As ODS are normally not transactional in nature, a NoSQL DB can play a vital role. 3. Electronic Record Keeping 4. Document & Content management 5. Real Time Analytics 6. Caching (in case you dont want to include specialized caching frameworks)

Avoid:
We should avoid usage of NoSQL databases where ACID transaction is required, need of robust database management tools, need of integration with existing reporting framework. We should avoid in case we are not expecting data to grow to Petabyte level.

Target Products:
There is large number of NoSQL products provided by various vendors but the front runners are MongoDB, CouchDB, Cassandra, HBase, Redis, Riak etc. An interesting article is available for comparisons of various products, although due to rapid development of these products over the time classification may vary. http://blog.nahurst.com/visual-guide-to-nosql-systems

References:
www.mongodb.org http://cassandra.apache.org/

http://couchdb.apache.org/

http://hbase.apache.org/
http://wiki.basho.com/ http://redis.io/ http://rickosborne.org/ http://www.10gen.com/

You might also like