The relational database (RDBMS) has been the mainstream database model for One-fourth centuries. But now the non-relational database, "cloud" or "NoSQL" database, is being used as an alternative database model to gain more and more share. In this article we will focus on the 10 key features of a non-relational NoSQL database: The top 5 advantages and the top 5 challenges.
Tip: Click the link to download the English PDF of this article
NoSQL's five big bit 1: elastic expansion
Over the years, when the database load needs to be increased, data administrators can only rely on vertical scaling (scale-up) – buying more and stronger servers instead of relying on scale-out (scale-out) – to distribute the databases across multiple hosts. In any case, the economic benefits of scale-out based on commercial hardware have become impossible to reject as the frequency of transactions, availability requirements, and the need to migrate databases to cloud and virtual environments are raised.
The new NoSQL data is designed to be able to be expanded transparently with the newer nodes, as opposed to an RDBMS system that is not easily scaled out on a commercial cluster. The design of a NoSQL database typically takes advantage of low-cost commercial hardware.
2: Big Data
Just as the increase in trading rates over the past 20 years has surpassed the imagination, the size of the data being stored has increased dramatically. O ' Reilly intelligently calls this phenomenon "the industrial revolution of data". The capabilities of RDBMS systems are also improving to accommodate this growth, but as with the limits on trading rates, the scale of data that a single RDBMS system can actually manage cannot meet the needs of some businesses. Today, NoSQL systems, such as Hadoop, have been able to handle the "big data" level of data capacity, which far exceeds the processing power of the largest RDBMS system.
3. Farewell to the DBA (goodbye?) )
While RDBMS vendors claim to have a lot of manageability improvements over the years, maintenance on advanced RDBMS systems cannot be separated from well-trained but expensive DBAs. DBAs need to be closely involved in the design, installation, and continuous tuning of advanced RDBMS systems.
In theory, NoSQL databases typically require less management from the most basic design: automated remediation and data distribution, and simpler data models bring less administrative operations and tuning requirements. In fact, the assertion that the DBA is dead is somewhat exaggerated. Always be responsible for the performance and availability of business-critical data storage.
4: Economics
NoSQL databases typically use inexpensive server clusters to manage the rapidly evolving data and transaction capacity, and the RDBMS tends to rely on expensive professional servers and storage systems. As a result, NoSQL systems are much less expensive per gigabyte or transaction cost per second than the RDBMS system, which allows you to store and process more data at very low cost.
5: Flexible Data Model
Change management is a headache for large RDBMS products. In an RDBMS, even small data model changes require very careful handling, and may require system downtime or reduced service levels.
The data model limitations of NoSQL databases are much easier-or not at all. NoSQL Key-value stores and document databases allow applications to store data from any structure in a single data element. Even a relatively strict BigTable-based NoSQL database (cassandra,hbase) often allows creating new columns without too many restrictions.
As a result, application or database schema changes do not need to be managed as a complex change unit. Theoretically, this allows for faster iterations of the application, and, of course, it is clear that if the application does not guarantee the integrity of the data, this can lead to undesirable side effects
NoSQL 5 Challenges
The prospect of a NoSQL database is promising, but there are many hurdles that need to be overcome to apply to mainstream businesses. Here are a few of the first things to solve.
1: Complete
RDBMS systems have been around for a long time. And NoSQL advocates believe that the growth of time is a sign of its deterioration. But for most CIOs, the RDBMS is stable. In most cases, RDBMS systems are stable and versatile. In comparison, some key components of most NoSQL products have yet to be implemented.
Most developers are eager to live in the forefront of technology, but companies must be cautious.
2: Support
Companies want to ensure that if a critical system crashes, they can get timely support. All RDBM providers pay a lot of power to support the high-level enterprises in the dynasties.
In contrast, most nosql systems are open-source projects, although each NoSQL database typically has one or more companies that support it, but these are usually small companies that lack global reach, support resources and the same credibility as Oracle,microsoft or IBM.
3: Data analytics and business intelligence
To meet the scalable requirements of popular WEB 2.0 applications, NoSQL databases have emerged. As a result, their feature sets are all about serving these applications. But the data generated in the business of WEB applications and additions and deletions is commercially valuable. Mining potential business information from these databases improves enterprise efficiency and competitiveness, and business intelligence (BI) is a critical issue for all enterprises that it faces yesterday.
NoSQL databases lack ad hoc queries 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 more convenient access to data, access to data stored on Hadoop clusters, and even other NoSQL databases. Quest Software has developed a cloud database product-toad-can provide ad hoc query capabilities for a variety of NoSQL.
4: Management
NoSQL's design goal may be 0 management scenarios, too far away from this goal. The current NoSQL installation and maintenance requires mastery of technology.
5. Professionalism
Developers familiar with relational database concepts and programming are all over the world, but almost every developer of a non-relational database is still learning. This, of course, will be resolved over time, but for now it is easier to find a developer or manager of a relational database
Summarize
NoSQL databases are becoming an increasingly important part of the database domain, and if they are used correctly, it will bring real benefits. However, for enterprises, the use of NoSQL databases should always be aware of relevant legal issues.
10 things you should know about NoSQL databases