理解数据库
存储数据的仓库
(数据项(记录)都是有编号的,我们去找数据通过编号)
- 数据库:现实世界一些事物,抽象出来信息的世界,用计算机去表达真实世界
学习材料:左神(算法课是由左神设计的,基于python语言的,内容简介明了,可以通俗易懂的去学习)
数据库的发展史
数据库设计分为几个阶段
现实世界 —-> 信息世界(概念模型)—-> 数据模型 —-> 物化模型
总结:概念模型:通过分析和归纳把业务划分成几个主题,并且要确定主题与主题之间的关系,
即确定主键和外键的关系
- 数据模型(逻辑模型):逻辑模型是在概念模型基础之上,确定各种属性与实体(主题)关系
范式建模(关系型数据库)
1NF:原子性,数据不可分割
2NF:唯一性,每一行的数据具有唯一性
3NF:独立性,消除传递依赖
- 物化模型(物理模型):
字段命名规范, 字段类型确定, 是否需要建立索引, 分区设置, 存储设置
小贴士:
维度建模(数据仓库)
架构对比
数据库:
- 索引
- 支持和用户交互式查询的
- 支持单条记录修改
数据仓库:
- 索引0.8简单索引
- 适用场景:海量数据查询,不支持和用户交互式查询
- 不支持单条记录修改,文件追加,文件覆盖