首页 > 知识点讲解
       反规范化理论
知识路径: > 计算机软件与网络基础知识 > 数据库系统 > 数据模型 > 
被考次数:1次     被考频率:低频率     总体答错率:57%     知识难度系数:     
考试要求:掌握      相关知识点:6个      
        前面已经介绍了规范化理论,在对数据模型进行规范化时,主要通过拆分的方式达到目的,而不断的拆分带来了新的问题。因为对多个拆分后的表进行查询操作时,需要涉及大量的连接操作,这使得查询变得费时与低效。为了有效地解决此问题,提出了反规范化技术,该技术与规范化理论做法刚好相反,而希望达到的目标主要是提高查询效率。
        常用的反规范技术包括:增加冗余列、增加派生列、重新组表、分割表。
               增加派生列
               加派生列指增加的列由表中其他数据计算生成。它的作用是在查询时减少连接操作,避免使用集函数。例如,表中有单价,也有数量,此时增加列“总额”,由于
               总额=单价×数量
               所以总额就是一个派生列。
               增加冗余列
               增加冗余列是指在多个表中具有相同的列,它常用来在查询时避免连接操作。
               重新组表
               重新组表指如果许多用户需要查看两个表连接出来的结果数据,则把这两个表重新组成一个表来减少连接而提高性能。
               分割表
               有时对表做分割可以提高性能。表分割有两种方式。
               (1)水平分割:根据一列或多列数据的值把数据行放到两个独立的表中。水平分割通常在下面的情况下使用:
               ①表很大,分割后可以降低在查询时需要读的数据和索引的页数,同时也降低了索引的层数,提高查询速度。
               ②表中的数据本来就有独立性。例如表中分别记录各个地区的数据或不同时期的数据,特别是有些数据常用,而另外一些数据不常用。
               ③需要把数据存放到多个介质上。
               水平分割会给应用增加复杂度,它通常在查询时需要多个表名,查询所有数据需要union操作。在许多数据库应用中,这种复杂性会超过它带来的优点,因为只要索引关键字不大,则在索引用于查询时,表中增加两到三倍数据量,查询时也就增加读一个索引层的磁盘次数。
               (2)垂直分割:把主码和一些列放到一个表,然后把主码和另外的列放到另一个表中。如果一个表中某些列常用,而另外一些列不常用,则可以采用垂直分割,另外垂直分割可以使得数据行变小,一个数据页就能存放更多的数据,在查询时就会减少I/O次数。其缺点是需要管理冗余列,查询所有数据需要join操作。
 
本知识点历年真题:
隶属试卷 题号/题型 题干 难度系数/错误率
   2009年下半年
   系统架构设计师..
   上午试卷 综合知识
第40题
选择题
以下关于RDBMS数据分布的叙述中,错误的是(40)。

57%
 
 相关知识点:
 
软考在线指南
优惠劵及余额
在线支付
修改密码
下载及使用
购买流程
取消订单
联系我们
关于我们
联系我们
商务合作
旗下网站群
高级资格科目
信息系统项目管理师 系统分析师
系统架构设计师 网络规划设计师
系统规划与管理师
初级资格科目
程序员 网络管理员
信息处理技术员 信息系统运行管理员
中级资格科目
系统集成项目管理工程师 网络工程师
软件设计师 信息系统监理师
信息系统管理工程师 数据库系统工程师
多媒体应用设计师 软件评测师
嵌入式系统设计师 电子商务设计师
信息安全工程师
 

本网站所有产品设计(包括造型,颜色,图案,观感,文字,产品,内容),功能及其展示形式,均已受版权或产权保护。
任何公司及个人不得以任何方式复制部分或全部,违者将依法追究责任,特此声明。
本站部分内容来自互联网或由会员上传,版权归原作者所有。如有问题,请及时联系我们。


工作时间:9:00-20:00

客服

点击这里给我发消息 点击这里给我发消息 点击这里给我发消息

商务合作

点击这里给我发消息

客服邮箱service@rkpass.cn


京B2-20210865 | 京ICP备2020040059号-5 |京公网安备 11010502032051号 | 营业执照 | Copyright ©2000-2023 All Rights Reserved 软考在线版权所有