这是我参与「第五届青训营 」伴学笔记创作活动的第17天。
一、课程目录
- 经典案例
- 存储&数据库
- 主流产品
- 新技术演进
二、课程内容
1、经典案例
数据的流动
- 用户注册数据
- 后端服务器
- 数据库系统
数据的持久化
- 校验数据的合法性
- 修改内存
- 写入存储介质
2、 存储&数据库
数据怎么从应用到存储介质
- 【缓存】很重要,贯穿整个存储体系(和其他层级软硬件交互)
- 【拷贝】很昂贵,应该尽量减少
- 硬件设备五花八门,要有抽象统一的接口
RAID技术
- 单机存储系统做到高性能、高性价比、高可靠性
- 背景:单块磁盘价格>多块小容量,写入性能单块<多块
- Redundant Array of Inexpensive Disks
- RAIDD0+1,空间利用率50%,RAID1之间是多个RAID0组合
数据库
-
关系模型:两个实体之间的联系
- 关系代数:关系运算的抽象查询语言:交、并。。。
- 结构化数据友好
- 支持事务ACID
- 支持复杂查询语言
-
非关系型数据库:不要求严格的结构化
- 半结构化数据友好
3、主流产品剖析
单机存储
-
本地文件系统
- Linux经典哲学:一切皆文件
- Linux文件系统两大数据结构
- Index Node:文件的唯一标识,id、大小、权限、磁盘位置
- Directory Entry:记录文件名,inode指针,层级关系
- Linux文件系统两大数据结构
- Linux经典哲学:一切皆文件
-
key-value存储
分布式存储
- 单机存储基础上实现分布式协议
- 分布式文件系统- HDFS
- 分布式存储-Ceph
分布式数据库
-
解决容量问题:存储节点池化,动态扩缩容
- 与数据库通过网络交互
- Database不需要感知容量
-
解决弹性问题
- 存储节点池化
- 什么不够扩什么
-
More to Do
- 多写
- 内存弹性
- 分布式事务优化
未完待续,未完待续。。