Nosql

2022/09/28

 NOSQL 是什么 咱们先来列举一下传统型数据库的特点:

结构化 二维表 E-R 关系(实体 - 关系模型) sql 标准化 支持事务(ACID) 锁 索引 sql ,是结构化查询语言,泛指关系型数据库

nosql (not noly sql),不仅仅是 sql ,这泛指不提供 sql 功能的非关系型数据库

它不遵循 sql 的标准,acid 特性,表结构等特性。

最开始 nosql 实际上是 not sql ,后面慢慢发展成 not only sql

 nosql 的发展历史:

列式存储 – 键值对存储 – 文档存储 – 图形存储

为什么需要 NOSQL? 大致列举如下几点:

由于现代网络的发展,大多是超大规模高并发的 web 2.0 动态网站 对于大量数据,关系型数据库已经遇到瓶颈,性能方面和扩展性方面的瓶颈 如何解决大规模数据集合,多重数据种类带来的挑战,这就需要 nosql 来处理了 mysql 等关系型数据库应用在大数据上面,显然是一个难题了

分类 数据模型 优势 劣势 举例
键值数据库 哈希表 查找速度快 数据无结构化,通常只被当作字符串或者二进制数据 Redis
列存储数据库 列式数据存储 查找速度快;支持分布横向扩展;数据压缩率高 功能相对受限 HBase
文档型数据库 键值对扩展 数据结构要求不严格;表结构可变;不需要预先定义表结构 查询性能不高,缺乏统一的查询语法 MongoDB
图数据库 节点和关系组成的图 利用图结构相关算法(最短路径、节点度关系查找等) 可能需要对整个图做计算,不利于图数据分布存储 Neo4j、JanusGraph

https://www.cnblogs.com/mantoudev/p/10414495.html

https://learnku.com/articles/71349

https://www.infoq.cn/article/vyrv7fzzzvqcetwfuzqy

Search

    Table of Contents