非关系型数据库的产生背景与分类
1、关系型数据库遇到的问题
2008年左右,网站、论坛、社交网络开始高速发展,关系型数据库的地位受到了很大的挑战。
关系型数据库的以下问题逐渐凸显:
- ● 难以应付每秒上万次的高并发数据写入。
- ● 查询上亿量级数据的速度极其缓慢。
- ● 分库、分表形成的子库到达一定规模后难以进一步扩展。
- ● 分库、分表的规则可能会因为需求变更而发生变更。
- ● 修改表结构困难。
在很多互联网应用场景下,对数据联表的查询需求不是那么强烈,也并不需要在数据写入后立刻读取,但对数据的读取和并发写入速度有非常高的要求。在这样的情况下,非关系型数据库得到高速的发展。
2009年,分布式文档型数据库MongoDB引发了一场去SQL的浪潮。
2、非关系型数据库的分类及特点
非关系型数据库主要分为以下几类。
1.键值数据库
主要代表是Redis、Flare。
这类数据库具有极高的读写性能,用于处理大量数据的高访问负载比较合适。
2.文档型数据库
主要代表是MongoDB、CouchDB。
这类数据库满足了海量数据的存储和访问需求,同时对字段要求不严格,可以随意地增加、删除、修改字段,且不需要预先定义表结构,所以适用于各种网络应用。
3.列存储数据库
主要代表是Cassandra、Hbase。
这类数据库查找速度快,可扩展性强,适合用作分布式文件存储系统。
4.图数据库
主要代表是InfoGrid、Neo4J。
这类数据库利用“图结构”的相关算法,适合用于构建社交网络和推荐系统的关系图谱。
摘自:《左手MongoDB,右手Redis——从入门到商业实战》
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报