小红花·文摘
  • 首页
  • AI Tokens🪙
  • 排行榜🏆
  • 直播
  • FAQ
如何判断慢查询是规划问题还是执行问题

PostgreSQL中,小型元数据表的过期统计信息会悄然拖慢大型查询。通过EXPLAIN可识别此问题,无需迁移schema即可修复。文章强调,忽视这些统计信息会导致性能瓶颈,及时更新统计信息是优化关键。

如何判断慢查询是规划问题还是执行问题

Timescale Blog Timescale Blog · 2026-08-21T15:47:50Z
Postgres约束在大规模场景下的隐藏成本

PostgreSQL中,小型元数据表的过时统计信息会悄然拖慢大型查询。通过EXPLAIN可识别此问题,无需迁移schema即可修复。文章强调,及时更新统计信息对优化查询性能至关重要。

Postgres约束在大规模场景下的隐藏成本

Timescale Blog Timescale Blog · 2026-07-24T14:30:49Z
Radim Marek:测试通过了,但执行计划没有。

RegreSQL 2.0 通过测试查询的执行计划和实际统计数据,确保数据库查询的正确性,捕捉到查询返回相同结果但执行方式不当的情况,避免因计划变化导致的性能问题。该工具在开发环境中模拟生产环境的统计信息,帮助开发者在代码合并前发现潜在问题。

Radim Marek:测试通过了,但执行计划没有。

Planet PostgreSQL Planet PostgreSQL · 2026-07-12T18:16:01Z

CBO(基于成本的优化器)在OLAP引擎中通过基数估计和代价常量做出决策,影响连接算法和顺序。统计信息对优化至关重要,直接影响查询性能。Trino和DuckDB的统计机制不同,DuckDB通过内置估计提高计划准确性。统计过期会导致错误的连接顺序,因此需定期更新统计信息以优化查询。

【分布式 OLAP 查询引擎】统计信息与代价模型

土法炼钢兴趣小组的博客 土法炼钢兴趣小组的博客 · 2026-07-07T00:00:00Z

Postgres的pg_stats用于生成统计信息,帮助查询规划器优化执行计划。通过ANALYZE命令更新统计数据,pg_stats提供列的独特值、常见值及其频率等信息。准确的统计数据对查询性能至关重要,错误的统计会导致不佳的执行计划。使用相关统计可以提高多列过滤的准确性。

Richard Yen:pg_stats:Postgres内部统计信息的工作原理

Planet PostgreSQL Planet PostgreSQL · 2026-06-22T08:00:00Z
克里斯托夫·佩图斯:将所有GUC参数一一列出:autovacuum_analyze_scale_factor和autovacuum_analyze_threshold

文章讨论了PostgreSQL中的自动真空分析参数:autovacuum_analyze_scale_factor和autovacuum_analyze_threshold。这两个参数决定了何时对表进行ANALYZE。默认设置在大表上可能导致统计信息过时,影响查询性能。因此,建议针对大于一百万行的表调整这些参数,以提高分析频率,确保统计信息及时更新,从而优化查询效率。

克里斯托夫·佩图斯:将所有GUC参数一一列出:autovacuum_analyze_scale_factor和autovacuum_analyze_threshold

Planet PostgreSQL Planet PostgreSQL · 2026-05-03T01:00:00Z
拉迪姆·马雷克:好的CTE,坏的CTE

PostgreSQL 12引入了CTE(公用表表达式)的内联优化,改变了CTE的处理方式。CTE根据引用次数和副作用进行处理,单次引用且无副作用的CTE会被内联,从而提高查询性能。物化CTE在多次引用或包含数据修改操作时仍然有用。PostgreSQL 17和18进一步改善了CTE的统计信息传播和内存使用监控,使得CTE的使用更加高效。

拉迪姆·马雷克:好的CTE,坏的CTE

Planet PostgreSQL Planet PostgreSQL · 2026-03-29T12:47:00Z
Radim Marek: pg_regresql:真正可移植的PostgreSQL统计信息

pg_regresql扩展解决了PostgreSQL优化器对pg_class.relpages的不信任问题。它通过使用pg_class中的统计信息来提高查询成本估算的准确性,确保EXPLAIN命令基于这些统计信息而非实际文件大小,从而增强回归测试的可靠性。该扩展适用于PostgreSQL 13至18版本,适合开发和测试环境。

Radim Marek: pg_regresql:真正可移植的PostgreSQL统计信息

Planet PostgreSQL Planet PostgreSQL · 2026-03-21T14:15:56Z
Deepak Mahto:PGConf印度2026:PostgreSQL查询调优:每个数据库开发者都应建立的基础

大多数PostgreSQL调优建议侧重于快速修复,而非深入理解查询计划的选择原因。慢查询只是表象,真正问题在于统计信息、DDL、查询风格和PG版本。在调优前需回答五个问题,以确保从根本上解决问题。

Deepak Mahto:PGConf印度2026:PostgreSQL查询调优:每个数据库开发者都应建立的基础

Planet PostgreSQL Planet PostgreSQL · 2026-03-13T01:12:23Z
Radim Marek:无生产数据的生产查询计划

PostgreSQL 18引入了pg_restore_relation_stats和pg_restore_attribute_stats函数,允许直接将统计信息注入数据库。这使得在升级或测试环境中可以使用生产环境的统计数据,从而提高查询计划的准确性。通过pg_dump的统计选项,可以轻松导出和恢复统计信息,确保开发和测试环境中的查询计划与生产环境一致。

Radim Marek:无生产数据的生产查询计划

Planet PostgreSQL Planet PostgreSQL · 2026-03-08T21:15:56Z
Radim Marek:PostgreSQL统计信息:为什么查询运行缓慢

本文讨论了PostgreSQL查询规划器如何依赖统计信息来估算查询成本。统计信息存储在pg_class和pg_statistic中,影响查询性能。过时的统计信息会导致错误的估算,影响查询效率。使用ANALYZE命令可以更新统计信息,确保规划器做出准确决策。文章还介绍了选择性、相关性及扩展统计等概念,以优化查询性能。

Radim Marek:PostgreSQL统计信息:为什么查询运行缓慢

Planet PostgreSQL Planet PostgreSQL · 2026-02-26T23:01:01Z
塞马布·塔里克:不要忽视ANALYZE:一个真实的PostgreSQL案例

在PostgreSQL数据库中,发现一个复杂的SELECT查询执行缓慢,原因是表未被分析。手动运行ANALYZE后,查询时间从10分钟缩短至20秒,CPU使用率下降83%。保持统计信息更新对性能至关重要。

塞马布·塔里克:不要忽视ANALYZE:一个真实的PostgreSQL案例

Planet PostgreSQL Planet PostgreSQL · 2025-10-10T10:47:45Z
Laurenz Albe:分区表统计信息

在PostgreSQL中,分区表的统计信息需要手动执行ANALYZE来收集。缺乏这些统计信息可能导致查询计划不佳,因此建议定期分析分区表,以确保优化器能够准确估算执行成本。

Laurenz Albe:分区表统计信息

Planet PostgreSQL Planet PostgreSQL · 2025-09-02T05:39:46Z
stats.store:隐私优先的Sparkle分析工具

作者创建了一个免费的开源分析后端stats.store,旨在为Sparkle提供现代、尊重隐私的分析工具。该工具收集基本的应用使用统计信息,如macOS版本和每日独立用户数,但不追踪IP地址或个人信息。该服务对开发开源Mac应用的开发者完全免费,作者愿意提供集成帮助。

stats.store:隐私优先的Sparkle分析工具

Peter Steinberger Peter Steinberger · 2025-06-18T09:00:00Z
Laurenz Albe:在PostgreSQL v18的重大升级中保留优化器统计信息

PostgreSQL v18将保留优化器统计信息,解决了升级时统计信息丢失的问题。用户需使用--with-statistics选项导出统计信息,尽管扩展统计信息仍需手动分析,但新功能将提升查询性能。

Laurenz Albe:在PostgreSQL v18的重大升级中保留优化器统计信息

Planet PostgreSQL Planet PostgreSQL · 2025-06-17T09:07:55Z
公告:shields-badge v1.0.0

本文介绍了shields-badge的v1.0.0版本,这是一个RubyGem,用于获取各种gem的统计信息,如下载量和排名,并提供了生成徽章的示例代码。

公告:shields-badge v1.0.0

DEV Community DEV Community · 2025-05-30T04:37:47Z
HarmonyOS NEXT开发案例:字符计数统计

该代码展示了如何在HarmonyOS NEXT中创建一个字符计数组件,支持中英文混合输入,并根据特定规则进行计数:中文字符和标点计2个单位,数字和英文字符计1个单位,实时更新统计信息。

HarmonyOS NEXT开发案例:字符计数统计

DEV Community DEV Community · 2025-05-11T03:29:49Z
Deepak Mahto:PostgreSQL 18 Beta预览 – 轻松导出或修改统计信息

PostgreSQL 18 beta发布了新的统计信息收集与使用功能,用户可以导出、导入和修改统计数据,以便在非生产环境中模拟生产行为,从而提升性能调优和执行计划的准确性。这一功能为数据库管理员和开发者提供了强有力的支持。

Deepak Mahto:PostgreSQL 18 Beta预览 – 轻松导出或修改统计信息

Planet PostgreSQL Planet PostgreSQL · 2025-05-10T17:56:51Z
Sephera命令行界面

Sephera是一个轻量级命令行工具,能够快速分析和可视化项目结构与代码,支持统计代码行数、获取项目统计信息和查看目录树,使用简单,无需配置。

Sephera命令行界面

DEV Community DEV Community · 2025-04-21T16:26:12Z
路易丝·格朗荣克:破解Postgres统计表以加快查询速度

Postgres通过扩展统计信息和相关性来提高查询性能,用户可以手动添加统计信息以优化查询计划,从而加快执行速度。

路易丝·格朗荣克:破解Postgres统计表以加快查询速度

Planet PostgreSQL Planet PostgreSQL · 2025-04-16T13:00:00Z
  • <<
  • <
  • 1 (current)
  • 2
  • >
  • >>
👤 个人中心
在公众号发送验证码完成验证
登录验证
在本设备完成一次验证即可继续使用

完成下面两步后,将自动完成登录并继续当前操作。

1 关注公众号
小红花技术领袖公众号二维码
小红花技术领袖
如果当前 App 无法识别二维码,请在微信搜索并关注该公众号
2 发送验证码
在公众号对话中发送下面 4 位验证码
小红花技术领袖俱乐部
小红花·文摘:汇聚分发优质内容
小红花技术领袖俱乐部
Copyright © 2021-
粤ICP备2022094092号-1
公众号 小红花技术领袖俱乐部公众号二维码
视频号 小红花技术领袖俱乐部视频号二维码