书籍:Beginning.SQL.Server.2005.for.Developers.From.Novice.to.Professional
章节:
chapter 3 database design and creation
关于数据库设计方面的读书笔记
要根据数据库的类型和用途,来建立数据库:
如果一个数据库,需要很频繁的数据更新的话,应该使用OLTP系统,即在线事务处理系统,里面的表单设计应该遵循第三范式等标准化准则,然后表要分得很细,很少的数据冗余,以保证在数据更新时,有尽量少的列需要更新,建立好用的索引和视图,保证速度,同时要注意及时的备份;
如果数据库,更新不频繁,然后主要是应用其中数据进行分析的话,应该选用OLAP系统,即在线分析处理系统,其中表的设计也不一定要十分遵循标准化的原则,设计得这么短小和合理,需要根据使用的方便程度来设计相应的表,可能出现数据冗余,可看成数据仓库。
数据库设计过程:
首先,收集资料,认真收集用户的需求说明,用几个意见point来表示
然后,对需求说明分类,从中提取出特定的几个实体对象,然后分析收集到的意见当中,对这个实体的说明,从而明确实体的属性
接着,根据提取出来的实体,对它需要拥有的属性进行进一步精确分析,主要从需求的角度,而不要太多考虑后期实现的问题,单纯就是将其属性表达清楚,注意对每一个表,给定一个特定的ID来唯一确定其身份
紧接着,确定每个实体之间的关系,注意各个种类关系的问题
最后是,规范化每个实体表,使用第三范式,消除数据冗余,同时要注意规范化的程度问题,不能够过头,如何在该停止的时候停止需要认真思考
关于规范化达到正常状态的一个标准:
When any reference tables return one row of data without further table reference to retrieve that information, that's a signal to stop normalization.
Subscribe to:
Post Comments (Atom)

No comments:
Post a Comment