关键字:数据库 反规范
第一范式:
对于表中的每一行,必须且仅仅有唯一的行值.在一行中的每一列仅有唯一的值并且具有原子性.
第二范式:
第二范式要求非主键列是主键的子集,非主键列活动必须完全依赖整个主键。主键必须有唯一性的元素,一个主键可以由一个或更多的组成唯一值的列组成。一旦创建,主键无法改变,外键关联一个表的主键。主外键关联意味着一对多的关系.
第三范式:
第三范式要求非主键列互不依赖.
第四范式:
第四范式禁止主键列和非主键列一对多关系不受约束
第五范式:
第五范式将表分割成尽可能小的块,为了排除在表中所有的冗余.
关于范式设计可以参考:
规范化-数据库设计原则 http://www-128.ibm.com/developerworks/cn/db2/library/techarticles/dm-0605jiangt/index.html
1. 摘要
本文从提高数据库性能的角度,介绍了数据库设计中几种常用的反规范方法,并对这些方法的优缺点以及使用时的注意事项做了较为深入的论述。
关键词: 数据库设计 反规范 提高性能
2. 数据库设计简述
数据库设计是把现实世界的商业模型与需求转换成数据库的模型的过程,它是建立数据库应用系统的核心问题。设计的关键是如何使设计的数据库能合理地存储用户的数据,方便用户进行数据处理。
数据库设计完全是人的问题,而不是数据库管理系统的问题。系统不管设计是好是坏,照样运行。数据库设计应当由数据库管理员和系统分析员一起和用户一道工作,了解各个用户的要求,共同为整个数据库做出恰当的、完整的设计。
数据库及其应用的性能和调优都是建立在良好的数据库设计的基础上,数据库的数据是一切操作的基础,如果数据库设计不好,则其它一切调优方法提高数据库性能的效果都是有限的。
数据的规范化
2.1. 范式概述