Original address: http://database.51cto.com/art/201109/291781.htm
In the current enterprise IT architecture, system administrators and DBAs will consider using NoSQL databases to solve problems that RDBMS cannot solve, especially in the internet industry. Traditional relational databases store data in the form of tables (table) and are not able to meet the challenges of unstructured data. In the process of standardization of data, the performance of relational database suffers a bottleneck.
NoSQL, as its name implies, is Not-only SQL, which can be a good complement to relational databases. In the report before the TechTarget database, we also gave a detailed introduction to the application scenarios of NoSQL databases. NoSQL is not like a traditional relational database, its variety, and each has its advantages and disadvantages, for the DBA how to distinguish between each other is a more headache work. In this article, we'll take you through the classification of NoSQL databases and their pros and cons.
Four families of NoSQL databases
Key value (key-value) store database
This type of database primarily uses a hash table that has a specific key and a pointer to the specific data. The advantage of the Key/value model for IT systems is simplicity and ease of deployment. But if the DBA only queries or updates part of the value, Key/value becomes inefficient.
Related databases
Tokyo cabinet/tyrant, Redis, Voldemort, Berkeley DB
Typical applications
Content caching, suitable for mixing workloads and scaling large datasets
Data model
A series of key-value pairs
Advantage
Quick Query
Disadvantage
The stored data is missing a structured
Column Store Database
This part of the database is often used to deal with massive amounts of data for distributed storage. Keys still exist, but they are characterized by pointing to multiple columns. These columns are arranged by the column family.
Related databases
Cassandra, HBase, Riak
Typical applications
Distributed File Systems
Data model
To store the same column of data in a clustered type
Advantage
Find Fast, scalable, and easily distributed extensions
Disadvantage
function relative limitation
Document Type Database
The document database is inspired by Lotus Notes Office software and is similar to the first key-value store. This type of data model is a versioned document, and semi-structured documents are stored in a specific format, such as JSON. A document database can be considered an upgraded version of a key-value database, allowing for the nesting of key values. and the document database is more efficient than the key-value database query.
Related databases
CouchDB, MongoDB
Typical applications
Web Apps
Data model
A series of key-value pairs
Advantage
Data structure requirements are not strict
Disadvantage
Query performance is not high, and the lack of uniform query syntax
Graph Database (graph)
The graphical structure of the database is different from the other columns and the rigid structure of the SQL database, it is using a flexible graphical model, and can be extended to multiple servers. NoSQL databases do not have a standard query language (SQL), so database queries require a data model. Many NoSQL databases have rest-type data interfaces or query APIs.
Related databases
Neo4j, Infogrid, Infinite Graph
Typical applications
Social networks, referral systems, and more. Focus on building a relationship map
Data model
Graph structure
Strengths
Using graph structure correlation algorithm.
Weaknesses
It is necessary to calculate the whole graph to get the result, it is not easy to do the distributed cluster scheme.
Therefore, we summarize the NoSQL database in the following cases, the comparison is applicable: 1, the data model is relatively simple, 2, the need for more flexible IT systems, 3, the database performance requirements are high, 4, does not require a high degree of data consistency, 5, for a given key, more easily map complex values of the environment.
Reading the four families of NoSQL databases [turn]