[pgsql-jp: 28039] Re: Polygon型カラムにインデックスが作成できない
Isamu Zakoji
zako @ fal.co.jp
2002年 11月 21日 (木) 13:05:01 JST
座光寺@ファルコンです。
abe-h @ shinetsu-tecsys.co.jp wrote:
>
> 少し、本件とはズレますがPath型についても、8191bytesを超えるような
> 巨大Pathがあったとしたら、インデックス作成はできないということでよろしいでしょうか?
>
そうだと思います。
ただ、indexのタプルを構築する所では、TOAST_INDEX_HACKなんていう
defineがあるので、大きくなるデータタプルに対応する様な指向がある
感じなんですが、よく判っていません。
> 結局、「poly_ops」で空間検索するのと「box_ops」で空間検索するのとでは同等ということでしょうか?
確認した所は、うそをついてました。すいません。
「box_ops」は本当に矩形領域間の判定してしていませんが、「poly_ops」は
rtreeの検索でヒットした後に、
backend/utils/adt/geo_ops.c
に有るように、演算種別によっては、ちゃんと?ポリゴン構成点を用いた判定
を行っています。でも、ポリゴン同士の重複チェックなどは、外接矩形しかみ
ていないし、中途半端ですね。
> また、上記の「ポリゴンデータとは別に」とは、
> create table spatial(id varchar(20), category varchar(10),
> area varchar(10), men polygon, men_box box);
> のようなテーブルで、
> create index boxidx on spatial using rtree(men_box box_ops);
> のようなインデックスを作成するということですか?
> (men_boxには、box(men)のデータが入るという前提です)
>
その通りです。
--
========================================
FALCON Corporation Zakoji Isamu
TEL:052-221-7556 FAX:052-221-7595
zako @ fal.co.jp or zako @ ma.nma.ne.jp
========================================
pgsql-jp メーリングリストの案内