10 things you should know about NoSQL Databases

Source: Internet
Author: User

10 things you should know about NoSQL Databases

Since the 1/4 century, relational databases (RDBMS) have been the mainstream database models. But now non-relational databases, "Cloud" or "NoSQL" databases, are gaining an increasing share as an alternative database model. In this article, we will focus on the 10 key features of non-relational NoSQL databases: the top 5 Advantages and the top 5 challenges. Tip: click the link to download the English PDF of this document.

Five major advantages of NoSQL 1: elastic Scaling

When the database load needs to increase over the years, data administrators can only rely on scale-up to buy more and stronger servers, rather than scale-out) -- distribute databases on multiple hosts. In any case, with the increase in transaction frequency and availability requirements, and the demand for database migration to cloud and virtual environments, the economic benefits of horizontal expansion based on commercial hardware have become unacceptable.

Compared with RDBMS systems, it is not easy to scale horizontally in commercial clusters. The new NoSQL data design should be transparent to use new nodes for expansion. NoSQL databases are usually designed to take advantage of low-cost commercial hardware.

2: Big Data

As in the past two decades, the increase in transaction rate has exceeded people's imagination, and the size of stored data has also greatly increased. O'reilly cleverly calls this phenomenon "the industrial revolution of data ". The ability of RDBMS systems is also improving to adapt to this growth. However, just like the limits on transaction rate, the data size that a single RDBMS system can actually manage cannot meet the needs of some enterprises. Today, NoSQL systems, such as Hadoop, can handle "Big Data"-level data capacity, which far exceeds the processing capability of the largest RDBMS system.

3. Goodbye to DBA (goodbye ?)

Despite the fact that RDBMS vendors have been claiming many ways of improving manageability over the years, maintenance on advanced RDBMS systems is still inseparable from well-trained but expensive DBAs. DBAs must closely participate in the design, installation, and continuous optimization of advanced RDBMS systems.

Theoretically, NoSQL databases usually require less management from the most basic design: Automated repair and data distribution, simpler data models, and fewer management operations and tuning requirements. In fact, the argument that DBA is dead is somewhat exaggerated. Someone is always responsible for the performance and availability of key business data storage.

4: Economic

NoSQL databases usually use cheap Server clusters to manage the rapidly growing data and transaction capacity, while RDBMS tends to rely on expensive professional servers and storage systems. As a result, the cost per gigabyte of A NoSQL system or the transaction cost per second is much lower than that of an RDBMS system, which allows you to store and process more data at a very low cost.

5. Flexible Data Models

Change management is a headache for large RDBMS products. In RDBMS, even minor data model changes require very careful processing and may require system downtime or lower service levels.

NoSQL databases have more or no restrictions on data models. NoSQL's key-value storage and Document Database allow applications to store data of any structure in a single data element. Even a relatively strict BigTable-based NoSQL database (Cassandra and HBase) usually allows creating new columns without too many restrictions.

As a result, changes to the application or database mode do not need to be managed as a complex change unit. Theoretically, this allows applications to iterate faster. Of course, it is clear that if the application cannot guarantee data integrity, this may bring adverse side effects.

Five challenges of NoSQL

The prospect of NoSQL databases is very promising, but there are still many difficulties to overcome to be applied to mainstream enterprises. Here are the first few problems to be solved.

1: complete

The RDBMS system has existed for a long time. NoSQL advocates believe that the growth of time is a signal of its degradation. However, for most CIOs, RDBMS is stable. In most cases, RDBMS systems are stable and versatile. In comparison, some key components of most NoSQL products still need to be implemented.

Most developers are eager to live at the forefront of technology, but enterprises must be cautious.

2: supported

Enterprises must ensure that they can get timely support if a key system crashes. All RDBM providers have made great efforts to provide high-level Enterprise Support in the dynasty.

In contrast, most NoSQL systems are open-source projects. Although every NoSQL database usually has one or more companies to provide support, these companies are usually small companies with a lack of global influence, supports resources and reputation like Oracle, Microsoft, or IBM.

3: data analysis and business intelligence

To meet the scalability requirements of popular Web 2.0 applications, NoSQL databases emerged. Therefore, their feature set is always intended to serve these applications. However, the data generated in the businesses for adding, deleting, modifying, and querying Web applications is of commercial value. Mining potential business information from these databases to improve the efficiency and competitiveness of enterprises and business intelligence (BI) is a key issue for all enterprises.

NoSQL databases lack ad hoc query and data analysis tools. Even a simple query requires professional programming skills, and traditional BI tools do not provide a connection to NoSQL.

HIVE and PIG are designed to solve this problem. They provide a more convenient way to access data stored in Hadoop clusters and even other NoSQL databases. Quest Software has developed a cloud database product-Toad-that provides ad hoc query capabilities for a variety of NoSQL databases.

4: Management

NoSQL's design goal may be a zero-management solution, which is too far away from reality. Currently, the installation and maintenance of NoSQL require mastering the technology.

5. Professionalism

Developers familiar with relational database concepts and programming are all over the world, but almost all non-relational database developers are still learning. This situation will certainly be solved over time, but for now, it is easier to find a relational database developer or administrator.

Summary

NoSQL databases are becoming an increasingly important part of the database field. If they are used correctly, they will bring real benefits. However, enterprises should always pay attention to relevant legal issues when using NoSQL databases.

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.