F.8. btree_gin — GIN演算子クラスとB-tree動作 #

btree_ginは、次に列挙するデータ型に対しB-treeと同等な動作を実装するGIN演算子クラスを提供します。データ型は、int2int4int8float4float8timestamp with time zonetimestamp without time zonetime with time zonetime without time zonedateintervaloidmoney"char"varchartextbyteabitvarbitmacaddrmacaddr8inetcidruuidnameboolbpcharおよびすべてのenum型です。

一般的に、これらの演算子クラスは同等な標準B-treeインデックス方式を性能的に凌駕する物ではなく、標準B-treeコードの1つの重要機能である一意性強要の能力を欠いています。 しかしながら、GINの試験、およびその他のGIN演算子クラスの開発の基礎として便利です。 同時に、GINインデックス化可能列およびB-treeインデックス化可能列双方を試験する問い合わせに対し、ビットマップを介してANDを取り一体化されるべき2つの別々のインデックスを作成するよりも、これらの演算子クラスの1つを使用する複数列GINインデックスを作成するほうがより効率的です。

このモジュールはtrustedと見なされます。つまり、現在のデータベースに対してCREATE権限を持つ非スーパーユーザがインストールできます。

F.8.1. 使用例 #

CREATE TABLE test (a int4);

-- インデックスの作成
CREATE INDEX testidx ON test USING GIN (a);

-- 問い合わせ
SELECT * FROM test WHERE a < 10;

F.8.2. 作者 #

Teodor Sigaev()および Oleg Bartunov()。 追加情報はhttp://www.sai.msu.su/~megera/oddmuse/index.cgi/Ginを参照ください。