Sat*_*hya 3 database performance
我目前正在进行性能调整练习。该应用程序是数据库密集型的,处理逻辑非常少。性能调整围绕数据库调用的方式和数据库本身进行。
我们进行了查询调整,我们放置了丢失的索引,我们在可能的情况下减少或消除了数据库调用。该应用程序运行良好,一切都很好。
对于较小的数据量(例如最多 100,000 条记录),性能非常出色。我的问题是,需要做什么才能确保在更高数据量下有如此好的性能?数据量预计将达到1000万条记录。
我可以想到表和索引分区,建议针对数据库存储和定期归档进行优化的文件系统以控制行数。我想知道还能做什么。任何提示/策略/模式都会非常有帮助。
监控。 使用一些工具来监视 CPU、内存和 I/O 的性能和饱和度。绘制趋势线,以便您在到达下一个瓶颈之前就知道该瓶颈在哪里。
测试。创建模拟数据,以便您今天 在测试服务器上拥有 1000 万行。 对应用程序中的查询进行基准测试,并查看随着数据量的增加它们的性能如何。您可能会对首先发生故障的部分感到惊讶,或者它可能会完全按照预期进行。重点是你可以找出来。
维护。 确保您的应用程序和基础设施支持一定的停机时间,因为这总是必要的。您可能需要整理碎片并重建索引。您可能必须重构一些表结构。您可能需要升级服务器软件或应用补丁。为了在不中断连续操作的情况下做到这一点,您需要在设计中内置一些冗余。
研究。找到适合您正在使用的数据库品牌的最佳期刊和博客,然后阅读它们(例如,如果您使用 MySQL,请访问http://www.mysqlperformanceblog.com)。您可以提出像您在这里提出的问题一样的好问题,但也可以阅读其他人在问什么,以及他们被建议做什么。你可以学习一些你还没有的问题的解决方案,这样当你有了它们时,你就会有一些可以使用的策略。
| 归档时间: |
|
| 查看次数: |
761 次 |
| 最近记录: |