托马斯·冯德拉:随机I/O的真实成本

托马斯·冯德拉:随机I/O的真实成本

💡 原文英文,约2500词,阅读约需9分钟。
📝

内容提要

在Postgres中,随机页面成本(random_page_cost)的默认值为4.0,但随着存储技术的发展,这一数值可能不再准确。实验表明,实际的随机页面成本约为30,远高于默认值。调整该参数可能影响查询计划,尤其是在高缓存比率的OLTP系统中,随机I/O可能更具优势。建议在调整时监控性能,以评估影响。

🎯

关键要点

  • random_page_cost的默认值为4.0,但随着存储技术的发展,这一数值可能不再准确。

  • 实验表明,实际的随机页面成本约为30,远高于默认值。

  • 调整random_page_cost可能影响查询计划,尤其是在高缓存比率的OLTP系统中。

  • 在SSD上,随机I/O的处理能力更强,因此可能需要降低默认值。

  • 建议在调整random_page_cost时监控性能,以评估其对查询的影响。

  • 在某些情况下,降低random_page_cost可能是合理的,尤其是在数据集较小且能够完全缓存的情况下。

延伸问答

random_page_cost的默认值是多少?

默认值为4.0。

实际的随机页面成本是多少?

实验表明,实际的随机页面成本约为30。

调整random_page_cost会有什么影响?

调整该参数可能影响查询计划,尤其是在高缓存比率的OLTP系统中。

在SSD上,random_page_cost应该如何调整?

在SSD上,随机I/O的处理能力更强,因此可能需要降低默认值。

为什么在某些情况下降低random_page_cost是合理的?

在数据集较小且能够完全缓存的情况下,降低random_page_cost可能更有利。

调整random_page_cost时应该注意什么?

建议在调整时监控性能,以评估影响。

➡️

继续阅读