Introduction to NoSQL Database
The relational databases _are widely us,ed in software industry. The design of relational databases is not such that which can CQpe with the scale and agility challenges that face modem real time applications, nor were they -- uilt to obtain benefit of the commodity storage and processing power avail;ble now a day. Now a days_ the data managem,eht becomes very
.difficult because of the tremen<jo sly increase in the size of data in various emerging fields like social networking, e-commerce etc.
- NoSQL is also known as "non SQL'' or "non relational" or "Not Only SQL". NoSQL is database which provides a complete diffe ent mechanism for storing and retrieval of data. which is modelled in means other than the tabular relations used in relational database management systems.
Sometimes the term NOSQL seems to be confusing as handling data without SQL is out of -
imagination for some people. But acrually the meaning of SQL is Not Only SQL.
NoSQL challenges the dominance of relational databases. NoSQL databases are increasingly used in big data and real-time web applications
- In NoSQL the data structures usCd like key-value, column, graph or document are different from those used in traditional relational database system which makes some operations faster in NoSQL. I
- Usually the data structures used by NoSQL I
databases are also more flexible than relational
database system. !
I
- NoSQL allows the insertion of data without a '
predefined schema (design). In this database, it is possible to make significant application changes in the system without having worry about service intenuptions. Because of it, the speed of development increases, the integration of code · becomes more reliable and time of database administration decreases.
- To enforce data quality controls, developer has to add applicativfl.-side code. NoSQL supports validation rules to be applied on the database which helps user to control the data while maintaining the advantage of a dynamic schema.
NoSQL databases are more concentrated on availability, partition tolerance, and speed for which they may compron:i.ise the consistency. The
basic reason of no wide adoption of NoSQL is use of low level query tanguage rather than SQL.
What is NoSQL ?
NoSQL systems are also called as "Not only SQL" which indicates that they may support query languages like SQL.
- NoSQL is not depending on column, rows or schema for structure, it is no-relational database management systems. The data models of NoSQL are more flexible.
NoSQL provides scalability, availability and fault tolera'.1ce and emerges as a alternative for relational database.
The speciality of NoSQL is that, it may not require fixed table schemas avoids join operations, and also scale horizontally.
Developers are working with applications that create massive volumes of new, rapidly changing data types structured, semi-structured, unstructured and polymorphic data. NoSQL is useful for data which is growing far more rapidly or unstructured data or data which does not store in the relational scb.emas of RDBMS. There are common types of unstructured data: user and session data; chat, messaging, and log data; time series data such as IoT and device data and large objects such as video and images.
Features of NoSQL
- Design simplicity.
Simpler "horizontal" scaling to clusters of machines. This was a problem in relational databases.
- More control over data availability.
Observations regarding NoSQL
It does not use the relational model. It runs well on clusters.
NoSQL is Mostly open-source. It is Schema-less.
Advantages of NoCQL
We cannot consider that NoSQL databases are straight substitution for relational database management system (RDBMS). But for many issues regarding data, NoSQL seem to be better.
1. Data storage: NbSQL databases supports storing data "in the fonn of Key value pair which give ability to store simple data structures. The document NoSQL database provides the ability to handle a range of flat or nested structures.
2. Support for unstructured text : NoSQL databases can handle unstnictured text easily. This ability increases information effectively and can help organizations make better decis;ons
3. Ability to Jiandle change over time : NoSQL databases are capable of managing changes
because of the systematic storage system
4. No reliance on SQL magic : SQL(Structured Query Language) is the predominant language· which is used to 'write queries in relational database management systems. Even if several NoSQL databases provide supp0rt for SQL access, they do so for compati ility with existing_ applications like business in ligence (BI) tools. NoSQL is not dependent on·SQL for processing. NoSQL databases support their own query languages that can support data processing.
5. Ability to scale horizontally on commodity hardware NoSQL databases supports distribution of a database across several servers. Hence if there is requirement of more data storage, then number of servers can be increased and connect them to database cluster (horizontal scaling) making them work as a single data service.
6. Breadth of functionality : Near about all the relational databases support the same
characteristics but in a slightly different way, so they are all similar. In contras the NoSQL databases come in different core types: key-value, document store and graph. Out of these types, the one select to suit our requirements is not hard.
7. Support for multiple data structures : There is requirement of simple as well as complex data structures. NoSQL databases provide support for a range of data structures. Key-value stores can handle Simple binary values, lists, maps, and strings. Document databases can manage highly complex parent-child hierarchal structures Graph stores can describe the web of interrelated information.
8. Big data applications : In some systems the data. grows rapidly. Such big volume data. can be easily handled by NoSQL databases.
9. Database administration : The NoSQL has data distribution and auto repair capabilities, simplified data models and fewer tuning and administration rcituirements. This leads to less requirement of hands-on management
10. Economy : These databases are designed to be used with low-cost commodity hardw e.
Comments
Post a Comment