A relational database (RDBMS) has been a mainstream database model for over One-fourth centuries. But now the relational database, "cloud" or "NoSQL" database, is gaining more and more occupancy as an alternative database model. In this article we will focus on the 10 key features of the NoSQL database: The advantages of the top 5 and the top 5 challenges. Tip: Click on the link to download the English version of this PDF
NoSQL's Five is a little 1: elastic expansion
Over the years, when the database load needs to increase, data administrators can rely on vertical scaling (scale-up)--buying more and stronger servers rather than relying on horizontal scaling (scale-out)--distributing databases across multiple hosts. In any case, with the increase in transaction frequency, availability requirements, and the need for databases to migrate to the cloud and virtual environments, the economic benefits of horizontal expansion based on commercial hardware have become impossible to reject.
Compared to the RDBMS system can not easily spread on the commercial cluster, the new NoSQL data design is to be able to transparently use the node to expand. The NoSQL database is typically designed to take advantage of low-cost commercial hardware.
2: Large Data
Just as the transaction rate has increased over the past 20 years, the size of the stored data has increased enormously. O ' Reilly wisely called the phenomenon "the industrial revolution of data." RDBMS systems are also improving to accommodate this growth, but as with transaction rate constraints, the size of the 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 "large data" level of data capacity, which far exceeds the processing power of the largest RDBMS system.
3. Farewell dba (goodbye?) )
While the RDBMS vendors claim to have many manageability improvements over the years, the maintenance on advanced RDBMS systems is inseparable 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 fixes and data distributions, and simpler data models that bring less management and tuning requirements. In fact, the assertion that the DBA is dead is somewhat exaggerated. Always have to be responsible for the performance and availability of key business data stores.
4: Economic Nature
NoSQL databases typically use inexpensive server clusters to manage the rapid growth of data and transaction capacity, while RDBMS tends to rely on expensive professional servers and storage systems. As a result, the NoSQL system's cost per gigabyte or transaction cost per second is much lower 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 need to be handled very carefully, and may require system downtime or reduced service levels.
The data model limits for NoSQL databases are much easier-or not at all. NoSQL's key-value stores and document databases allow you to apply data that stores any structure in a data element. Even a relatively restrictive, BigTable-based NoSQL database (cassandra,hbase) often allows the creation of new columns without too many restrictions.
As a result, changes in the application or database schema do not need to be managed as a complex change unit. In theory, this allows applications to be faster iterations, and of course, it is clear that if the application does not guarantee the integrity of the data, this can have undesirable side effects.
NoSQL 5 Big Challenges
The outlook for the NoSQL database is very promising, but there are still many difficulties to be overcome to apply to the mainstream enterprises. Here are a few of the first issues to be addressed.
1: Complete
RDBMS systems have been around for a long time. Proponents of NoSQL believe that the growth of time is the signal of its degeneration. But for most CIOs, the RDBMS is stable. In most cases, the RDBMS system is stable and versatile. By comparison, some of the 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
Enterprises should ensure that if a critical system crashes, they can get timely support. All RDBM providers pay a great power to the high level of enterprise support in dynasties.
By contrast, most NoSQL systems are open source projects, although each NoSQL database is usually supported by one or more companies, but these companies are usually small companies, lacking global clout, supporting resources and the same reputation as oracle,microsoft, or IBM.
3: Data analysis and business intelligence
In order to meet the needs of the popular WEB 2.0 applications, the NoSQL database came into being. As a result, their feature sets are all in the service of these applications. But the data produced in the business of WEB application additions and deletions is commercially valuable. Mining potential business information from these databases enhances the efficiency and competitiveness of the enterprise as well as Business Intelligence (BI) as the key issue for all enterprises in the face of it yesterday.
The NoSQL database lacks 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 to address this problem by providing a more convenient way to access data, access to data stored on the Hadoop cluster, 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 could be a 0 management program, too far from the reality of the goal. At present, the installation and maintenance of NoSQL need to master technology.
5. Professional
Developers familiar with relational database concepts and programming are all over the world, but almost every developer of a database that is not relational is still in learning. This will certainly be resolved over time, but for now, it is clearly easier to find a developer or manager of a relational database
Summarize
The NoSQL database is becoming a more and more important part of the database field, and if it is used correctly, it will bring real benefits. However, for enterprises, the use of NoSQL database should always pay attention to the relevant legal issues.