良好的数据库逻辑设计和物理设计是数据库获得高性能的基础
数据库结构优化的目的
1.减少数据冗余
2.尽量避免书维护中出现更新,插入和删除异常
插入异常:如果表中的某个实体随着另一个实体而存在,则无法插入
更新异常:如果更改表中的某个实体的单独属性时,需要对多行进行更新
删除异常:如果删除表中的某一实体则会导致其他实体的消失
3.节约数据存储空间
4.提高查询效率
逻辑涉及
- 涉及数据的逻辑存储机构 数据实体之间的逻辑关系,解决数据冗余和数据维护异常
物理设计:根据所使用的数据库特点进行表结构设计
- 关系型数据库: Oracle,SQLServer,Mysql,postgresql
- 非关系型数据库:mongo,redis,hadoop
- 存储引擎:Innodb
数据库设计范式
优化①:设计规范化表,消除数据冗余
数据库范式是确保数据库结构合理,满足各种查询需要、避免数据库操作异常的数据库设计方式。满足范式要求的表,称为规范化表,范式产生于20世纪70年代初,一般表设计满足前三范式就可以,在这里简单介绍一下前三范式
-
第一范式(1NF)无重复的列
所谓第一范式(1NF)是指在关系模型中,对域添加的一个规范要求,所有的域都应该是原子性的,即数据库表的每一列都是不可分割的原