NoSQL database - Different types of NoSQL database

Relational databases have a long-standing position in small and medium-sized enterprises. As volume of data is increasing industries are looking for some alternative which can serve very high request rates at very low latency. Relational database require vertical up-gradation of system(highly efficient cpu/processor) and it is a costly affair and their is an upper limit too, up to what value cpu/processing unit can be upgraded.
Since relational databases(oracle, Mysql) are SQL/table oriented so the alternative databases named NoSQL(initially abbreviated as no sql later it became not only SQL) databases provides a mechanism for storage and retrieval of data that is modelled in means other than the tabular relations used in relational databases. NoSQL broadly cover to all non-relational databases.

NoSQL databases follows BASE(Basically Available, Soft state, Eventual consistency) properties instead of ACID(Atomicity, Consistency, Isolation,Durability) properties. There is trade-off of preferring BASE over ACID when we are dealing with large volume of  data and shifting gear from transaction processing to dealing with real time application or analytic operations. NoSQL database systems has flexible data model, higher scalability, and superior performance, however most of these NoSQL databases does not include the very foundation - expressive query language, secondary indexes and strong consistency,  that has made relational databases so useful for generations of applications . Refer this article for detailed explanation about BASE vs ACID.

Motivation behind inclination towards nosql databases can be summarized as :
1. Need to handle multi-structured data types(structured,semi-structured, unstructured and
    polymorphic data) or scale beyond the capacity constraints of existing systems. NoSQL
    support "horizontal" scaling to clusters of machine and used extensively in big
    data and real-time web applications.
2. Desire to identify viable alternatives to expensive proprietary database software and hardware.
    Commodity hardware can be used to build database ecosystem instead monolithic server and
    strong infrastructure.
3. Agility or speed of software development.
There are long list of databases which comes under category of NoSQL ecosystem. Based on the data structure internally these database uses, it can be broadly classified in three category, it is called data model in NoSQL terminology.
  • Document model - Document databases store data in documents.These documents typically use JSON (JavaScript Object Notation) structure. It is most commonly used due to its flexibility and ability to query on any field. It is used for semi-structured data. Document-oriented system relies on internal structure of the document in order to extract metadata that the database engine uses for further optimization. Document DB get their type information from the data itself and each instance of it is different from each other. Each instance contains relevant information together(combining employee details and its address). MongoDB and  CouchDB are two popular document oriented nosql database. Below diagram shows document sample that contains info from two different source /relational table.

    Document storing data as key value pairs
  •  
  • Graph model - Graph databases use graph data structure to store data. It is being used when traversing relationships are core to the application like social network connections.
    Neo4j and Giraph are commonly known graph database.Below diagram shows how graph model is created. 
    Image courtesy: wikipedia 
  • key-value model :-  key-value stores are the most basic type of non-relational database. It is schema less database and every item in the database is stored as an attribute name/key together with its value. It is commonly used for representing unstructured data. Data is considered to be inherently opaque to the database because based on that key data is accessed. Following diagram represent typical key-value store database. Example of Key/Value model database : Riak and Redis 
  •  Wide column model(Columnar NO SQL database ) :- Wide column model is similar to traditional relational database(consisting of table and columns) with one most significant difference : number of columns is not fixed for each record.
    i.e : columns are created for each row rather than being predefined by the table structure.

    Data retrieval only supported using primary key per column family
    Example of Wide Column model database : HBase and Cassandra
Here record 2 and 3 having different columns, Email is added for 3rd record. Consider Wide column database as key value store with value is stored as key-value subset.
Below diagram summarise various data model and corresponding databases with strength and weakness.(Diagram courtesy: Edureka)
Note : 
  1. Document databases provide the ability to query on any field within a document. 
  2. The document data model is the most natural and most productive because it maps directly to objects in modern object-oriented languages.
  3. Key-value stores and wide column stores provide a single means of accessing data: by primary key.  
  4. Document databases and graph databases can be consistent or eventually consistent. MongoDB provide tunable consistency.By default, data is consistent — all writes and reads access the primary copy of the data. However, read operation against secondary copies. 
  5. Eventually consistent systems provide some advantages for inserts at the cost of making reads, updates and deletes more complex, In eventually consistent systems, there is a period of time in which all copies of the data are not synchronized.

Summary of types of NOSQL  

  • Wide Row - Also known as wide-column stores, these databases store data in rows and users are able to perform some query operations via column-based access. A wide-row store offers very high performance and a highly scalable architecture. Examples include: Cassandra, HBase, and Google BigTable.
  • Columnar - Also known as column oriented store. Here the columns of all the rowsare stored together on disk. A great fit for analytical queries because it reduces diskseek and encourages array like processing. Amazon Redshift, Google BigQuery,Teradata (with column partitioning), Druid.
  • Key/Value - These NoSQL databases are some of the least complex as all of the data within consists of an indexed key and a value. Examples include Amazon DynamoDB, Riak, and Oracle NoSQL database
  • Document - Expands on the basic idea of key-value stores where "documents" are more complex, in that they contain data and each document is assigned a unique key, which is used to retrieve the document. These are designed for storing, retrieving, and managing document-oriented information, also known as semistructured data. Examples include MongoDB and CouchDB
  •  Graph - Designed for data whose relationships are well represented as a graph structure and has elements that are interconnected; with an undetermined number of relationships between them. Examples include: Neo4J, OrientDB and TitanDB

References : 


21 Comments

  1. The development of artificial intelligence (AI) has propelled more programming architects, information scientists, and different experts to investigate the plausibility of a vocation in machine learning. Notwithstanding, a few newcomers will in general spotlight a lot on hypothesis and insufficient on commonsense application. machine learning projects for final year In case you will succeed, you have to begin building machine learning projects in the near future.

    Projects assist you with improving your applied ML skills rapidly while allowing you to investigate an intriguing point. Furthermore, you can include projects into your portfolio, making it simpler to get a vocation, discover cool profession openings, and Final Year Project Centers in Chennai even arrange a more significant compensation.


    Data analytics is the study of dissecting crude data so as to make decisions about that data. Data analytics advances and procedures are generally utilized in business ventures to empower associations to settle on progressively Python Training in Chennai educated business choices. In the present worldwide commercial center, it isn't sufficient to assemble data and do the math; you should realize how to apply that data to genuine situations such that will affect conduct. In the program you will initially gain proficiency with the specialized skills, including R and Python dialects most usually utilized in data analytics programming and usage; Python Training in Chennai at that point center around the commonsense application, in view of genuine business issues in a scope of industry segments, for example, wellbeing, promoting and account.


    The Nodejs Projects Angular Training covers a wide range of topics including Components, Angular Directives, Angular Services, Pipes, security fundamentals, Routing, and Angular programmability. The new Angular TRaining will lay the foundation you need to specialise in Single Page Application developer. Angular Training

    ReplyDelete
  2. This post is so interactive and informative.keep update more information...
    ios training in bangalore
    ios training institute in bangalore

    ReplyDelete
  3. This post is so interactive and informative.keep update more information...
    dot net training in anna nagar
    Dot net training in Chennai


    ReplyDelete
  4. Thanks for the informative post. Well, got a good knowledge .I like it and help me to develop myself. Learn about-software companies in Chennai

    ReplyDelete
  5. Want to take the hassle out of your vacation planning? Fret not and explore the huge selection of United Airlines Vacation Packages. From incredible accommodation to immersive activities, the airline agents will craft the package as per your requirements.

    ReplyDelete
  6. If something is in front of the paper feed tray, the paper feed tray may not open even after you command a print job. As a result, the Canon support code 6000 shall occur. In such a case, remove any physical objects that prevent the tray from opening and turn OFF the printer. Then, turn ON the printer and command printing again.

    ReplyDelete
  7. Suppose you desire a prosperous career in the corporate world and have a knack for finance assignment help. In that case, a career in Corporate Finance is ideal. It will position you at the epicenter of all business operations. finance assignment help online career in Corporate Finance is a great opportunity to learn about the fundamental finance assignment help UK activities of a business.

    ReplyDelete
  8. Welcome to 99travellers, your ultimate destination for meticulously curated, real-time content spanning the top 15 trending topics across diverse interests. Our platform is thoughtfully crafted to keep you not only informed but also entertained and inspired. We offer a carefully curated blend of articles, videos, and insightful perspectives. Whether your passion lies in technology, fashion, travel, health, or any imaginable topic, rest assured, we have you covered. Our dedicated team of experts tirelessly navigates the vast internet landscape, handpicking the most pertinent and captivating content to ensure you're perpetually updated on the latest and hottest trends.

    ReplyDelete
Previous Post Next Post