这是我参与「第五届青训营 」伴学笔记创作活动的第 15 天
一、本堂课重点内容:
- 模拟案例
- 存储 & 数据库简介
- 主流产品剖析
- 新技术演进
二、详细知识点介绍:
- 一个提供了读写、控制类接口,能够安全有效的把数据持久化的软件,就可以称为存储系统
- linux:一切都是文件
- 文件系统的管理单元:文件
- linux文件系统的两大数据结构:index node & directory entry
- index node:记录文件元数据,id,大小,权限,磁盘位置。inode是一个文件的唯一标识,会被存储得到磁盘上inode的总数在格式化文件系统时就固定了
- directory entry:记录文件名。inode指针,层级关系等。
- hdfs:大数据时代的基石。支持海量数据存储;高容错性;弱posix语义;性价比高
- es 面向文档存储 文档可序列化成json,支持嵌套 index:文档的集合
- mongodb
- 面向文档存储 文档可序列化成json,支持嵌套 collection:文档的集合
- redis:数据结构:hash表,set,string,zset,list 基于内存 支持aof、rdb持久化
三、实践练习例子:
-
一范式 列的原子性 列不可再拆分
-
二范式 唯一主键 不存在多主键
-
三范式 不依赖非主键字段 及更深层次的依赖
-
反三范式 允许少量的数据冗余 提高查询速度
-
DDL data definition language 定义
-
dml manipulation 操作
-
dql query 查询
-
dcl control 控制 用来定义数据库的访问权限和安全级别 以及创建用户
四、课后个人总结:
- 存储从单机逐渐走向分布式,增大并发和io能力,降低成本,但是增加了一致性问题
- 存储系统不存在银弹,对性能极其敏感,需要针对具体业务具体选型
五、引用参考: