自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(5)
  • 收藏
  • 关注

原创 一例MergeJoin引发的性能问题

这是一例在处理客户现场问题过程中,遇到的比较特殊的案例。客户新上线的系统,一个存储过程运行超过12个小时还未结束,需要协助排查。由于是生产系统,我们无法使用 explain analyze 去验证每条SQL(大量 DML 语句),而只能通过explain来看SQL的执行计划 ,以避免修改生产数据。由于只能看执行计划,而不能看实际的执行时长,因此,初始排查执行计划并未发现问题。别无他法,只能协调用户修改存储过程增加时间日志打印,精确定位SQL卡点,终于发现了问题所在。为什么这个问题会这么难以发现了?

2025-01-22 16:18:46 1330

原创 PostgreSQL 与 Oracle 对于 where 条件应用顺序规则差异

不同的 where 条件过滤效果是不同的,过滤效果佳的条件优先应用可以减少整体CPU消耗,因为条件1过滤效果越好,条件2需要评估的tuple数越少。以下通过例子展示 PG17 与 Oracle19 在where 条件评估顺序方面的差异。

2025-01-21 17:27:32 332

原创 Immutable 与 Stable 函数态行为差异比较

Stable函数不能修改数据库,单个Query中所有行给定同样的参数确保返回相同的结果。这种稳定级别允许优化器将特定场景下多次函数调用转换为一次。在索引扫描的条件中使用这种函数是可行的,因为索引扫描只计算一次比较值(comparisonvalue),而不是每行都计算一次。Immutable函数不能修改数据库,在任何情况下,只要输入参数相同,返回结果就相同。这种级别的函数,优化器可以提前进行计算,在查询过程中作为常量参数。

2025-01-20 11:25:40 1505

原创 函数稳定态影响索引使用及分区表剪枝

PostgreSQL函数有三种稳定态,具体可以看函数稳定态影响SQL索引使用、分区剪枝。本文通过例子展示稳定态对于索引使用的影响。

2025-01-20 09:54:03 208

原创 PostgreSQL 函数稳定态与性能

PostgreSQL不同函数稳定态对于函数调用性能影响很大

2025-01-17 17:46:47 1166 2

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除