MongoDB系列之什么是非关系型数据库

x33g5p2x  于2022-06-16 转载在 其他  
字(0.9k)|赞(0)|评价(0)|浏览(527)

1、什么是NoSQL?

NoSQL,指的是非关系型的数据库。NoSQL是Not Only SQL的缩写,是对不同于传统的关系型数据库管理系统的统称。非关系型数据库不同于传统的关系型数据库,非关系型数据库对数据的存储不需要特定的模式,适用于大规模的数据存储。

2、SQL VS NoSQL

关系型数据库NoSQL数据库
关系型数据库管理系统RDBMS非关系型分布式数据库系统
不支持分布式默认支持分布式,内置分布式解决方案
结构化查询语言NoSQL 数据库具有用于非结构化数据的动态模式
适合复杂关联查询不适合复杂关联查询
遵循ACID属性遵循CAP()遵循 CAP(一致性、可用性、分区容错性)
可以通过加CPU 或 SSD 等内容来增加单个服务器的负载可以通过分片或在 NoSQL 数据库中添加更多服务器
示例: MySQL、PostgreSQL、Oracle、SQL Server 等示例: MongoDB、GraphQL、HBase、Neo4j、Cassandra 等

3、NoSQL数据库分类

类型 | 典型代表| 特点
—|—
列存储 | HBase、Cassandra、Hypertable|按照列存储数据的,方便存储结构化和半结构化的数据,方便做数据压缩
文档存储 | MongoDB、CounchDB | 存储采用一种类似于json的数据结构。存储内容是文档型的,这样就容易对某些字段加索引,实现类似于关系型数据库的功能
Key-value 存储 Tokyo、Cabinet/Tyrant、Berkelery DB、Memcache、Redis|可以通过 key 快速查询到其value。
图存储 Neo4J| FlockDB|图形关系的最佳存储。使用传统关系数据库来解决的话性能低下,而且设计使用不方便
对象存储 | Db4o、Versant|通过类似面向对象语言的语法操作数据库,通过对象的方式存储数据。
XML数据库 | Berkeley DB XML、BaseX|高效的存储XML 数据,并存储 XML 的内部查询语法,比如XQuery,Xpath。

图例来自:https://www.pdai.tech/md/db/nosql-mongo/mongo-x-basic.html

相关文章