1

Postgres には新しいリリース9.6があります。インデックス オンリー スキャンに関するドキュメントを読みました。私は postgres テーブルのヒープを認識しており、部分インデックス (または一般的なインデックス) がどのように機能するかを知っています。インデックスのみの利点がわかりません。

質問

  • 本当に何が変わったのですか?既にインデックスのみのスキャンを使用していませんか?
  • 最高のメリットを得るには、いつ、どのように使用すればよいですか?

関連のない背景:実稼働環境でINSERTs とs が多い 60 億行のテーブルを扱っていますSELECT

4

1 に答える 1

6

リリースノートより引用

インデックスの WHERE 句がインデックスが作成されていない列を参照している場合に、部分インデックスでインデックスのみのスキャンを使用できるようにする

(私のものを強調)

そのため、9.5 以前では、次のインデックスをインデックスのみのスキャンに使用できませんでした。

create index on foo (col1, col2)
   where col3 = 42;

col3インデックス付きの列の一部ではなかったからです。これは 9.6 で変更されました

于 2016-09-29T17:06:43.323 に答える