Why is there NoSQL?
With the development of the Internet, when we turn a server into two servers, when we start to build data backup, when we need to add a buffer layer, to adjust all the query, put more hardware.
Finally, it is necessary to divide the data into multiple clusters and reconstruct a large number of application logic to fit the segmentation. After a while, you'll find yourself constrained by the data structure you've been designing a few months ago.
With the rise of web2.0, the defects of relational database can not be overcome more and more obvious, which is mainly shown as the following points.
1, the data high concurrent reading and writing needs
2. High-efficient storage and access to massive data.
3, the high scalability of the database and high availability requirements.
4, database transaction consistency requirements.
5, Database realism and literacy requirements.
6, queries on complex SQL, especially the need for associated queries.
NoSQL is an abbreviation for notonly SQL, NoSQL does not use SQL as the query language. Its data storage can not require a fixed table pattern, and often avoids the use of SQL join operations, generally have the characteristics of horizontal scalability.
NoSQL history?
1, the word NoSQL first appeared in 1998, is a lightweight, open source, and does not provide SQL function database for Carlo Strozzi development.
In 2, 2009, Last.fm's Johan Oskarsson launched a discussion on distributed open source databases, and Eric Evans from Rackspace the NoSQL concept, where nosql mainly refers to the relationship between the non-relational, distributed, Database design mode is not provided.
3, the 2009 trend is high, is designated as "non-relational" data storage, relative to the use of relational databases, this concept is undoubtedly a new thinking of injection.
What is the difference between SQL and NoSQL?
NoSQL has the following points
Advantages:
1. High concurrent reading and writing
2. Massive data storage
3, High scalability
4. High Availability
Disadvantages:
5. Lack of transactional consistency
6, lack of real-time reading and writing
7, do not support complex queries
NoSQL Database Type
Key-value:key refers to the key value pair of value, which is usually implemented with a hash table
A column database: the same column of data exists together
Document database: Key-value corresponding key value pairs, value for structured data products: MongoDB
Diagram structure database: With "Diagram" as the basic storage model, product: neo4j,infogrid,infinitegraph
NoSQL Database open Source software
1, Membase Software
2, Hypertable
3, Apachecassandra
4, MongoDB
Here we use the MongoDB, the next MongoDB profile, and the example operation.