一、定义
-
主要针对键值、文档、图形类型数据存储;
-
天生支持分布式,数据冗余和数据分片等特性,旨在提供可扩展的高可用高性能数据存储解决方案;
-
代表有:HBase, Cassandra, MongoDB, Redis
二、SQL 与 NoSQL 区别
三、 分类
1. 键值数据库
-
其中每个项目都包含键和值,极为灵活,应用可以完全控制value字段中存储的内容,没有任何限制;
-
如:Redis, DynanoDB
2. 文档数据库
-
数据存储在类似于JSON对象的文档中,清晰直观,每个文档包含成对的字段和值;
-
值可以是各种类型,其结构与开发者代码中使用的对象保持一致;
-
如:MongoDB
3. 图形数据库
-
旨在轻松构建和运行与高度连接的数据集一起使用的应用程序,包括:社交网络、推荐引擎、欺诈检测等;
-
如:Neo4j, Giraph
4. 宽列数据库
-
适合存储大量的数据
-
如:Cassandra, HBase
四、 优势
1. 灵活性:提供灵活的架构,以实现更快速更多的迭代开发
2. 可扩展性:通常被设计为通过分布式硬件集群来横向扩展,而非通过添加服务器纵向扩展
3. 高性能:针对特定的数据模型和访问模式进行了优化,提供了更高的性能
4. 功能强大:提供功能强大的API和数据类型
标签:关系,存储,NoSQL,数据库,文档,键值,数据 From: https://www.cnblogs.com/yy528/p/17276670.html