这是我参与[第五届青训营]伴学打卡活动的第14天
储存系统
系统概述:
提供读写、控制类接口,能够安全有效地把数据持久化的软件,就可以称为储存系统
RAID技术:
- RAID 0:多块磁盘的简单组合,数据条带化储存,提高磁盘性能,没有额外的容错设计
- RAID 1:一块磁盘对应一块额外的镜像磁盘,真实的空间利用率为50%,容错能力强
- RAID 0+1:整合了RAID 0和RAID 1,真实空间利用率为50%,容错能力强,写入带宽好
数据库
关系型数据库:
关系型数据库是储存系统,但是在储存之外,又发展出其他能力。例如,结构化数据友好,支持事务,支持复杂查询语言(SQL)
非关系型数据库:
非关系型数据库也是储存系统,但一般不要求严格的结构化。其特点与关系型数据库不同,对半结构化数据友好,可能支持事务,可能支持复杂查询语言。
数据库系统对于经典储存的优势在于结构化的管理数据,事务能力(保持数据持久性,执行前后保持数据状态一致,操作的原子性)。同时,数据库对于复杂的查询有相应的很好地支持。
数据库使用方式:
SQL语言
主流储存产品剖析
单机储存:本地文件系统,key-value储存,单个节点上的储存软件系统,一般不涉及网络交互。
分布式储存:分布式文件系统,分布式对象储存,例如HDFS,Ceph
单机数据库:单个计算机节点上的数据库系统,事务在单机内执行,也可能通过网络交互实现分布式事务,例如关系型数据库MySQL,非关系型数据库Redis,MongoDB。
分布式数据库需要解决的问题:容量,弹性,性价比,分布式事务优化。