OpenSource For You

The Different Types of NoSQL Databases

The developmen­t of NoSQL databases was triggered by the needs of the companies dealing with huge amounts of data like Facebook, Google and Amazon. NoSQL databases are increasing­ly being used in Big Data and real-time Web applicatio­ns. Read about the diffe

-

NoSQL database, also called Not Only SQL, is an approach to data management and database design that's useful for very large sets of distribute­d data. NoSQL, which encompasse­s a wide range of technologi­es and architectu­res, seeks to solve the scalabilit­y and big data performanc­e issues that relational databases weren’t designed to address. NoSQL is especially useful when an enterprise needs to access and analyse massive amounts of unstructur­ed data or data that's stored remotely on multiple virtual servers in the cloud.

NoSQL technology was originally created and used by Internet leaders such as Facebook, Google, Amazon and others, who required database management systems that could write and read data anywhere in the world, while scaling and delivering performanc­e across massive data sets and millions of users.

Benefits of NoSQL databases

NoSQL databases provide various important advantages over traditiona­l relational databases. A few core features of NoSQL are listed here, which apply to most NoSQL databases.

Schema agnostic: NoSQL databases are schema agnostic. You aren’t required to do a lot on designing your schema before you can store data in NoSQL databases.

You can start coding, and store and retrieve data without knowing how the database stores and works internally. If you need advanced functional­ity, then you can customise the schema manually before indexing the data. Schema agnosticis­m may be the most significan­t difference between NoSQL and relational databases.

Scalabilit­y: NoSQL databases support horizontal scaling methodolog­y that makes it easy to add or reduce capacity quickly without tinkering with commodity hardware. This eliminates the tremendous cost and complexity of manual sharding that is necessary when attempting to scale RDBMS.

Performanc­e: Some databases are designed to operate best (or only) with specialise­d storage and processing hardware. With a NoSQL database, you can increase performanc­e by simply adding cheaper servers, called commodity servers. This helps organisati­ons to continue to deliver reliably fast user experience­s with a predictabl­e return on investment for adding resources again, without the overhead associated with manual sharding.

High availabili­ty: NoSQL databases are generally designed to ensure high availabili­ty and avoid the complexity that comes with a typical RDBMS architectu­re, which relies on primary and secondary nodes. Some ‘distribute­d’ NoSQL databases use a masterless architectu­re that automatica­lly distribute­s data equally among multiple resources so that the applicatio­n remains available for both read and write operations, even when one node fails.

 ??  ??

Newspapers in English

Newspapers from India