性能

  • 数据冗余度过低可能会造成性能问题
    • 因为数据库为了找到目标属性,要连接多张表
      • 连接多张表要做笛卡尔积,性能消耗较大

实例

  • 表A可以通过关联的表B来获取属性C
    • 为了性能, 可以把属性C冗余保存到表A中

场景特化

  • 可以用冗余的唯一标识号来方便特定的应用场景
    • 如身份证号可以唯一标识学生, 学号也可以, 而冗余的学号可以方便的表示学生的相关信息

变更隔离

实例

如订单上的收货地址应该定格在某一时间点
而用户的收货地址可以随时更改
订单上的收货地址就不应该直接引用用户的收货地址, 而是通过克隆来保存一份冗余到订单中