测试和优化架构和应用性能

性能调优是一个迭代过程,您需要评估 CPU 利用率和延迟时间等指标,调整架构和应用以提高性能,然后再次进行测试。

例如,您可以在架构中添加或更改索引,或者更改主键。在应用中,您可以批量写入,也可以合并或修改查询。

对于生产流量,性能调优尤为重要,有助于避免意外情况。设置越接近实际生产流量吞吐量和数据大小,性能调优效果就越好。

如需测试和调整架构及应用性能,请按以下步骤操作:

  1. 将部分数据上传到 Spanner 数据库中。 您可以使用 BigQuery 反向 ETL 工作流加载示例数据。如需了解详情,请参阅加载示例数据
  2. 将应用指向 Spanner。
  3. 通过检查基本流程来验证数据库一致性。
  4. 通过对应用执行负载测试,验证性能是否符合您的预期。如需有关如何识别和优化最耗费资源的查询的帮助,请参阅使用查询数据分析检测查询性能问题。 具体而言,以下因素可能会导致查询性能欠佳:
    1. 低效查询:如需了解如何编写高效的 SQL 查询,请参阅 SQL 最佳实践
    2. 高 CPU 利用率:如需了解详情,请参阅调查高 CPU 利用率
    3. 锁定:如需减少因事务锁定而导致的瓶颈,请参阅识别可能导致高延迟的事务
    4. 架构设计效率低下:如果架构设计不合理,查询优化就没什么用。如需详细了解如何设计良好的架构,请参阅架构设计最佳实践
    5. 热点:Spanner 中的热点会限制写入吞吐量,尤其是对于高 QPS 应用。如需找出热点或架构设计问题,请查看 Google Cloud 控制台中的 Key Visualizer 统计信息。如需详细了解如何避免热点,请参阅选择一个主键以避免生成热点
  5. 如果您修改了架构或索引,请重复进行数据库一致性和性能测试,直到获得令人满意的结果。

如需详细了解如何微调数据库性能,请与 Spanner 支持团队联系。