基准测试通过衡量数据库模式处理实际工作负载和资源使用情况的效率来评估模式优化。它们评估在不同条件下查询性能、存储效率和可伸缩性等因素。例如,基准测试可以比较重构表、添加索引或更改范式级别前后的查询执行时间。这提供了具体数据,以确定模式更改是否在不带来意外权衡的情况下实现了有意义的改进。
基准测试评估模式优化的一个关键方法是通过查询性能指标。它们运行标准化查询和事务,以衡量执行速度、吞吐量(每秒处理的查询数)和延迟。例如,非规范化模式可以减少分析工作负载中的 JOIN 操作,从而在模拟数据仓库场景的 TPC-H 等基准测试中加快查询时间。相反,像 TPC-C 这样的事务性基准测试则侧重于高并发 OLTP 系统的规范化和索引效率。基准测试还会跟踪资源使用情况,如 CPU 或内存开销,以确保优化不会将瓶颈转移到其他地方。例如,添加过多的索引可能会加快读取速度,但由于索引维护成本而减慢写入速度。
存储效率是另一个关键的基准测试标准。优化的模式应在保持性能的同时最大限度地减少冗余数据。基准测试衡量磁盘空间使用量、数据压缩率和 I/O 操作。例如,在 SSB(星型模式基准测试)等基准测试中,使用列式存储进行分析工作负载的模式可能会显示出更小的存储占用空间和更快的扫描速度。分区策略,例如按日期范围分割表,被测试其对查询速度和维护开销的影响。基准测试还会揭示权衡:高度规范化的模式可能使用较少的存储空间但需要复杂的连接,而非规范化模式可能消耗更多磁盘空间但简化查询。
最后,基准测试评估可伸缩性和并发处理能力。它们模拟高用户负载、大数据集和混合工作负载,以测试模式优化在压力下的表现。例如,具有设计不良的锁或事务的模式在 TPC-E 模拟的券商工作负载下可能会失败。基准测试还测试优化如何适应数据增长:分区模式对于时间序列数据可能会线性扩展,而非分区模式的性能可能会下降。这些测试帮助开发人员确定优化是否足够强大以满足生产规模需求,或者是否需要进一步改进。