这是我参与「第五届青训营 」伴学笔记创作活动的第 6 天
存储与数据库
本节课程主要包含以下内容:
- 模拟案例
- 存储 & 数据库简介
- 主流产品剖析
- 新技术演进
模拟案例
一条数据从产生,到数据流动,最后持久化的全生命周期
数据的产生:用户注册
数据流动:用户注册数据到后端服务器再保存到数据库
数据的持久化
存储系统
一个提供了读写、控制类接口,能够安全有效地把数据持久化的软件,就可以称为存储系统
特点:性能敏感,容易受硬件影响
数据从应用到存储介质:
「缓存」很重要,贯穿整个存储体系「拷贝」很昂贵,应该尽量减少
RAID技术:
RAID出现的背景:
- 单块大容量磁盘的价格>多块小容量磁盘
- 单块磁盘的写入性能<多块磁盘的并发写入性能
- 单块磁盘的容错能力有限,不够安全
数据库
关系型数据库是存储系统,但是在存储之外,又发展出其他能力
非关系型数据库也是存储系统,但是一般不要求严格的结构化
数据库与经典存储差异
结构化数据处理:用户注册数据
- 数据库:写入关系型数据库,以表形式管理
- 经典存储:写入文件,自行定义管理结构
事务能力:
凸显出数据库支持「事务」的优越性事务具有∶ A(tomicity),事务内的操作要么全做,要么不做.C(onsistency),事务执行前后,数据状态是一致的l(solation),可以隔离多个并发事务,避免影响·D(urability),事务一旦提交成功,数据保证持久性
复杂查询能力
主流产品剖析
单机存储产品
- 单机文件系统
- 单机key-value存储
分布式存储产品
- HDFS
- Ceph
单机数据库产品
- 关系型数据库 —— PG、MySQL
- 非关系型数据库 —— ES、MongoDB、Redis
- Elasticsearch使用案例
分布式数据库产品
- 问题与挑战
- 解决方案