生产环境PostgreSQL查询性能优化求助:磁盘I/O瓶颈
PostgreSQL查询性能优化求助:主键关联时重复磁盘I/O导致耗时超30秒
我们生产环境中有一条PostgreSQL查询执行耗时超30秒,通过QUERY PLAN分析发现,瓶颈在于使用table_c_pk主键关联table_c时的重复磁盘I/O,该步骤耗时约28秒。
已开展的排查工作
- 使用
amcheck扩展的bt_index_check函数检查table_c_pk索引,未发现损坏; - 通过
pgstattuple扩展的pg_statindex函数检测到table_c_pk索引存在严重膨胀(avg_leaf_density仅3.16%),新建同列索引后索引体积缩小33倍,但查询性能仍未达预期; - 结合
pgstattuple与pg_stat_user_tables检查table_c的autovacuum状态及表膨胀情况:表最近一次autovacuum今日已执行,但表内仍存在较多空闲空间。
当前状态与求助
问题已持续数周,排查进展缓慢,现附上完整执行计划、排查数据及原始查询,寻求性能优化方向的具体建议。
内容的提问来源于stack exchange,提问作者kgen
相关产品推荐
相关产品推荐

