请用200字以内的文字说明常见的反规范化设计方法,并说明用户查询商品信息应该采用哪种反规范化设计方法。
简答题
请用200字以内的文字说明常见的反规范化设计方法,并说明用户查询商品信息应该采用哪种反规范化设计方法。
答案:常见的反规范化设计方法包括:增加冗余列、增加派生列、表合并、表分割。用户查询商品信息需要同时显示药品信息、供应商信息和库存信息,可以采用增加冗余列的方法,将供应商名称和当前库存数量冗余到药品表中。
解析
参考答案
- 常见反规范化方法:增加冗余列、增加派生列、表合并、表分割。
- 用户查询商品信息宜采用增加冗余列:将供应商名称、当前库存数量等冗余到商品表,减少连接操作。
得分点解析
- 方法齐备是基础,说明掌握反规范化常用手段。
- 选择增加冗余列,因为商品查询常跨商品、供应商、库存表,冗余后单表即可返回结果。
- 冗余列减少连接,能降低查询复杂度、提升读取性能。
考点延伸
增加派生列存放可计算值,表合并减少关联,表分割拆分大表或冷热数据。反规范化以牺牲部分一致性、增加更新成本为代价换取查询效率,需结合实际读写比例权衡。