Oracle数据库逻辑与物理设计优化全解析
1. 列顺序优化
调整列顺序可能会缩短行长度,进而提升表扫描性能。不过,这种优化效果相对较小。若存在能让模型更易理解和维护的逻辑列顺序,通常不建议为了这些微小的优化而牺牲逻辑顺序。
2. 利用Oracle对象类型
Oracle对象类型(如VARRAY和对象表)为传统物理数据建模技术提供了另一种选择。例如,可使用嵌套表或VARRAY列来实现明细表格,而非通过外键连接两个表。
2.1 优点
对于特定的访问模式,Oracle对象类型具有一定优势。
2.2 缺点
- 物理模型高度依赖于Oracle,会影响标准商业智能和数据查询工具的有效运行。
- 关于Oracle对象类型优化的知识较少,即使是经验丰富的性能专家也可能缺乏相关经验。
- 大多数对象类型存在严重的权衡问题,传统物理模型方法在更广泛的应用设计和类型中通常更优。
- 使用Oracle对象可能使整体数据模型更难理解和维护。
3. 非规范化
规范化是消除数据模型中冗余和重复组,并确保正确定义关键属性的过程。非规范化则是将冗余、重复或非规范化结构重新引入物理模型,目的通常是提高性能。
3.1 风险
- 非规范化可能改善某些关键事务或查询的性能,但可能会使其他操作变得困难、低效或无法执行。例如,重复组虽可避免连接明细表格,但计算统计信息(如平均值)可能会很困难。
- 非规范化几乎总是会增加插入和更新的开销