对于具有覆盖 btree 索引的表,当更新非键索引列时,是否可以进行仅堆元组(HOT)更新?
假设我有一个带有此索引的“用户”表:
CREATE INDEX users_email_index ON users(email) INCLUDE(name)
name
并且表的填充因子是60;更新时会发生热更新吗?
对于具有覆盖 btree 索引的表,当更新非键索引列时,是否可以进行仅堆元组(HOT)更新?
假设我有一个带有此索引的“用户”表:
CREATE INDEX users_email_index ON users(email) INCLUDE(name)
name
并且表的填充因子是60;更新时会发生热更新吗?
更新值时,PostgreSQL 必须使用新值创建一个新的索引条目。该条目将指向新的元组,因此它不是仅索引的。
因此您将不会获得热门更新。