这是我参与「第三届青训营 -后端场」笔记创作活动的的第5篇笔记。
主要内容
- 模拟案例
- 存储 & 数据库简介
- 主流产品剖析
- 新技术演进
背景
- 存储系统和数据库系统往往是后端服务的最后一环,提供数据存储、查询能力。
经典案例
通过一个模拟案例,描述了数据是怎么产生,在后端系统里怎么流通,最后怎么写入到存储/数据库系统。
数据的产生:某天,小明同学下载了一个新的APP。因为第一次登陆,所以进入APP后需要注册一个新的账号
数据的流动:
数据的持久化:
存储 & 数据库简介
数据怎么从应用到存储介质
需要注意两点:
缓存:贯穿整个存储体系 拷贝:很昂贵,应该尽量减少
数据库简介
关系型数据库是存储系统,但是再存储之外,又发展出其他能力
- 比如:结构化数据友好,支持事务,支持复杂查询语言
非关系型数据库也是存储系统,但是一般不要求严格的结构化
- 比如:半结构化数据友好,支持事务,支持复杂查询语言
主流存储产品剖析
单机存储:单个计算机节点上的存储软件系统,一般不涉及网络交互
- 本地文件系统
- 管理单元:文件,接口很多
- key-value存储
- 常见使用方式: put(k, v) & get(k)
- 常见数据结构:LSM-Tree,某种程度上牺牲读性能,追求写入性能
- 拳头产品: RocksDB 分布式存储:HDFS、Ceph
- HDFS核心特点:
- 支持海量数据存储
- 高容错性
- 弱POSIX语义
- 使用普通x86服务器,性价比高