Introduction to NoSQL
Getting Started with NoSQL
What is NoSQL?
If we think of the original meaning of the word "NoSQL" it is referring to the meaning Non-relational. At times it is called Not Only SQL.because it supports.SQL like.query languages. One of the main features in NoSQL is that it has its own way of storing and retrieving data. Other than that It has its unique features such as
- Distributed
- Horizontally scalable
- Easy Replication
- Eventually Consistent
- Open Source and
- No transaction support
The most popular examples of NoSQL are MongoDB and Cassandra.
Why should we use NoSQL?
High Scalability and High availability are the main advantages you can gain by using NoSQL.
High Scalability
It is capable of High scalability because it uses sharding.for horizontal.scaling.Shard means each individual horizontal partition of data in a database.
NoSQL is capable of handling huge amounts of data because of its high scalability. It doesn't matter the data is structured,semi-structured or unstructured. It is capable of handling all types of data.
High Availability
NoSql is capable of making an exact copy of the existing data. We called that feature the replicability of NoSQL.It helps us to keep the data in a consistent state.
Despite these features, NoSQL is easy to use in Object-Oriented Programming because of its flexibility. It also helps in persistent code pushes and quick iterations.
What are the disadvantages of NoSQL?
Less Functionality - Since NoSQL is open-source it has no reliable standard. It means it has no reliability functions as relational databases because it mainly designed.for storage and it is still new to the market.
Not Compatible - NoSql is not compatible with SQL. We have to use a manual query language because some management systems in NoSQL use a structured query language.
Open Source - Since its open-source NoSql is less reliable.
No GUI is available - There are no GUI mode.tools in the market to access the database.
Types of NoSQL database
Key-Value
Those are considered as the simplest NoSQL databases. Each stored item in the database is stored as attributes along with its value.
Real-life examples
- userID,userName
Examples for key-value databases
- DynamoDB
- Riak
- Redis
- BerkeleyDB
Graph DB
There are three main parts of the graph. Those are Nodes, Properties, and Edges.
Nodes represent entities while properties represent information about nodes and edges represent the relationship between nodes.
Real-life examples
Real-life examples
- Fraud detection
- Medical History
- Transportation System
Examples for graph databases
Column Family
The column family doesn't contain a set of rows or tuples with values. Those are organized as tables with set of columns. And it.may or.may not contain.a value for a particular.row value. In here the concept called keyspace is used. A keyspace is consists of column families that contains all the columns and rows.
- Giraph
- Neo4J
Column Family
The column family doesn't contain a set of rows or tuples with values. Those are organized as tables with set of columns. And it.may or.may not contain.a value for a particular.row value. In here the concept called keyspace is used. A keyspace is consists of column families that contains all the columns and rows.
Real-life examples
- A column.family for fruits of a supermarket
- A column family.for users
Examples for Column family databases
- HBase
- Kudu
- Cassandra
Document
Document is a complicated data structure that contains different key-value pairs.
Real-life examples
- eBay
- Shutterfly
Examples for Document databases
- MongoDB
- CouchDB
Comments
Post a Comment