重新认识冗余字段
来源:互联网 发布:mysql创建索引的优缺点 编辑:程序博客网 时间:2024/05/22 10:17
1冗余字段的定义
冗余字段是指反复出现的,重复的字段。也就是说在数据库中如果表a出现过字段b,表c再出现字段b,那么字段b就可以被看作是冗余字段了。
2冗余字段的弊端
如果参照三范式,那我们在设计数据库的时候就必须致力于消灭冗余字段,毕竟如果我们需要更新某条记录,而这条记录又恰好包含了冗余字段,那么我就必须更新所有携有冗余字段的表。如果冗余冗余字段只出现在很少的表中那么这不算什么大问题。但是如果有很多很多张表都携有冗余字段,不仅会使数据库性能降低还会带来数据不一致等一系列问题。所以,我们目前所接触的经典教材都在强调三范式还是很有道理的。
3冗余字段的用处
冗余字段确实有很大地弊端,这是否说明我们就该将之视为洪水猛兽,弃而不用呢?大可不必。举个例子来说表a有三个字段:员工号,员工姓名,员工出生日期;表b有三个字段员工号,员工工资,员工工龄;这样的设计符合三范式。但是我们发现当我们查询员工工龄的时候不仅仅需要知道员工号,还需要知道员工姓名。这个时候我们需要使用join语句或者使用视图来获取员工工龄和员工姓名。当数据只有百条,千条时这样设计并没有什么问题,但当数据库中有几万条数据时再使用join语句就未必是个好方法了。这时候如果在表b中增加一个姓名的冗余字段就能提升数据库的性能。
4冗余字段的使用原则
冗余字段不是妖魔鬼怪。在像我这样的菜鸟眼中它可能像一头狮子一样凶猛可怕,但在高手面前,它却会像小猫一样乖巧可爱。想要成为高手,就必须学会驾驭雄狮,而想要驾驭雄狮就必须去了解它。下面来讨论一下冗余字段的使用原则。
a不随便使用冗余字段。
b只在关键数据上使用冗余字段
c根据业务需求决定是否使用冗余字段
总之,冗余字段是一杯酒,小酌怡情,痛饮伤身,乱喝要命。
- 重新认识冗余字段
- 重新认识冗余字段
- 冗余字段
- 关于数据库冗余字段
- 数据库---冗余字段
- 数据库冗余字段
- 数据库设计冗余字段
- 认识独立冗余磁盘阵列RAID
- 数据库冗余字段的理解。
- 数据库设计之冗余字段
- 重新认识敏子
- 重新认识数据库范式
- 菜鸟-重新认识NTFS
- 重新认识面向对象
- 重新认识js-1
- 重新认识自我
- 震惊!重新认识资本主义。
- 重新认识container
- Sencha Touch设置一个table样式时,tbody的宽度只有table的一半
- ZeroMQ学习:window下编译zeromq-3.2.3和jzmq-master
- 授权android应用程序访问网络
- 使用模版函数简化精灵等对象初始化
- 2013.10.31 面试问与答
- 重新认识冗余字段
- 最少费用购物 动态规划
- Android应用性能优化
- 斜率小于0的连线数量-归并排序
- NineOldAndroidsDemos 学习(3) PathAnimationActivity
- WebService—快速实现一个基于JAX-WS的WebService项目(二)
- Documentation/vm/zswap.txt
- windows下zmq的编译
- LeetCode Linked List Cycle II 和I 通用算法和优化算法