PostgreSQL 11 preview - 索引 增强 汇总

1 minute read

背景

PostgreSQL 11 索引特性的增强。

E.1.3.1.3. Indexes

  • Allow indexes to INCLUDE columns that are not part of the unique constraint but are available for index-only scans (Anastasia Lubennikova, Alexander Korotkov, Teodor Sigaev)

    This is also useful for including columns that don’t have btree support.

    《PostgreSQL 11 preview 功能增强 - 唯一约束 + 附加字段组合功能索引》

    允许唯一约束索引中,使用INCLUDE包含非唯一约束的字段的内容。甚至对于无法使用BTREE构建的字段类型,也可以将它的字段内容用include包含进来。类似b+tree的效果。

  • Remember the highest btree index page to optimize future monotonically increasing index additions (Pavan Deolasee, Peter Geoghegan)

  • Allow entire hash index pages to be scanned (Ashutosh Sharma)

    Previously for each hash index entry, we need to refind the scan position within the page. This cuts down on lock/unlock traffic.

  • Add predicate locking for hash, GiST and GIN indexes (Shubham Barai)

    This reduces the likelihood of serialization conflicts. ACCURATE?

  • Allow heap-only-tuple (HOT) updates for expression indexes when the values of the expressions are unchanged (Konstantin Knizhnik)

    《PostgreSQL 11 preview - Surjective indexes - 索引HOT增强(表达式)update评估》

E.1.3.1.3.1. SP-Gist

  • Add TEXT prefix operator ^@ which is supported by SP-GiST (Ildus Kurbangaliev)

    This is similar to using LIKE ‘word%’ with btree indexes, but is more efficient.

    允许SP-GiST索引支持前缀模糊查询( ^@LIKE 'word%' 效果一致 ),并且效率比btree索引更高。

  • Allow polygons to be indexed with SP-GiST (Nikita Glukhov, Alexander Korotkov)

    允许polygon类型使用SP-GiST索引 (空间分区索引)。

  • Allow SP-GiST indexes to optionally use compression (Teodor Sigaev, Heikki Linnakangas, Alexander Korotkov, Nikita Glukhov)

    允许SP-GiST索引支持压缩。

Flag Counter

digoal’s 大量PostgreSQL文章入口