一,关系数据库(RDB)
关系型数据库作为传统的数据库,支持完整的ACID属性,其中声明式的SQL语法屏蔽了底层的实现细节,同时关系数据模型也符合人的正常思维逻辑,因此在各种应用中关系型数据库都占据主导位置。常见的RDB数据库包括Mysql,Oracle,Sql server,PgSql,SQLite,Mysql分支MariaDB等。
关系型数据库优点多多,但是在现今的互联网环境下慢慢的暴露出其弊端,包括:
无法存储数据结构
表结构固定,扩展性差
大数据量下的 I/O 性能差
全文检索功能弱
二,非关系数据库(NoSQL)
NoSQL是说Not Only SQL,非关系型数据库舍弃了ACID属性中的一个或多个,因此NoSQL也并非银弹,只能作为关系型数据库的补充,或者适用于特定的业务场景。
常见的NoSQL包含以下类别,基本上都是为了补充RDB数据库的不足而产生:
K-V 数据库:解决了RDB数据库无法存储数据结构的弊端,以 Redis 为代表
文档数据库:解决了RDB数据库表结构扩展性差的问题,以 MongoDB 为代表
列式数据库:解决了RDB数据库在大数据场景下的I/O性能问题,以 HBase 为代表
全文检索引擎:补充了RDB数据库全文检索能力,以 ES 为代表
三,分散式存储系统(DRDB)
留待观察,官网
四,NoSQL的历史轨迹
借用网上的一张图来说
现在应该再加上 New SQL 了应该。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。