btree_gin
は、次に列挙するデータ型に対しB-treeと同等な動作を実装するGIN演算子クラスを提供します。データ型は、int2
、int4
、int8
、float4
、float8
、timestamp with time zone
、timestamp without time zone
、time with time zone
、time without time zone
、date
、interval
、oid
、money
、"char"
、varchar
、text
、bytea
、 bit
、varbit
、macaddr
、macaddr8
、inet
、cidr
、およびすべてのenum
型です。
一般的に、これらの演算子クラスは同等な標準B-treeインデックス方式を性能的に凌駕する物ではなく、標準B-treeコードの1つの重要機能である一意性強要の能力を欠いています。 しかしながら、GINの試験、およびその他のGIN演算子クラスの開発の基礎として便利です。 同時に、GINインデックス化可能列およびB-treeインデックス化可能列双方を試験する問い合わせに対し、ビットマップを介してANDを取り一体化されるべき2つの別々のインデックスを作成するよりも、これらの演算子クラスの1つを使用する複数列GINインデックスを作成するほうがより効率的です。
CREATE TABLE test (a int4); -- インデックスの作成 CREATE INDEX testidx ON test USING GIN (a); -- 問い合わせ SELECT * FROM test WHERE a < 10;
Teodor Sigaev(<teodor@stack.net>
)および
Oleg Bartunov(<oleg@sai.msu.su>
)。
追加情報はhttp://www.sai.msu.su/~megera/oddmuse/index.cgi/Ginを参照ください。