存储与数据库 | 青训营笔记

62 阅读2分钟

这是我参与「第五届青训营 」伴学笔记创作活动的第 6 天

存储与数据库

本节课程主要包含以下内容:

  1. 模拟案例
  2. 存储 & 数据库简介
  3. 主流产品剖析
  4. 新技术演进

模拟案例

一条数据从产生,到数据流动,最后持久化的全生命周期

数据的产生:用户注册

数据流动:用户注册数据到后端服务器再保存到数据库

数据的持久化

存储系统

一个提供了读写、控制类接口,能够安全有效地把数据持久化的软件,就可以称为存储系统

特点:性能敏感,容易受硬件影响

数据从应用到存储介质:

image.png 「缓存」很重要,贯穿整个存储体系「拷贝」很昂贵,应该尽量减少

RAID技术:

RAID出现的背景:

  1. 单块大容量磁盘的价格>多块小容量磁盘
  2. 单块磁盘的写入性能<多块磁盘的并发写入性能
  3. 单块磁盘的容错能力有限,不够安全

数据库

关系型数据库是存储系统,但是在存储之外,又发展出其他能力

非关系型数据库也是存储系统,但是一般不要求严格的结构化

数据库与经典存储差异

结构化数据处理:用户注册数据

  1. 数据库:写入关系型数据库,以表形式管理
  2. 经典存储:写入文件,自行定义管理结构

事务能力:

凸显出数据库支持「事务」的优越性事务具有∶ A(tomicity),事务内的操作要么全做,要么不做.C(onsistency),事务执行前后,数据状态是一致的l(solation),可以隔离多个并发事务,避免影响·D(urability),事务一旦提交成功,数据保证持久性

复杂查询能力

主流产品剖析

单机存储产品

  • 单机文件系统
  • 单机key-value存储

分布式存储产品

  • HDFS
  • Ceph

单机数据库产品

  • 关系型数据库 —— PG、MySQL
  • 非关系型数据库 —— ES、MongoDB、Redis
  • Elasticsearch使用案例

分布式数据库产品

  • 问题与挑战
  • 解决方案