PostGIS 2.0.0のあまり語られてない部分

PostGIS 2.0.0 のリリース記事の日本語訳が id:hogeman:20120405 でhogemanさんがあげて下さってます。

英文は http://www.osgeo.org/node/1275 など。

変更点等が挙げられていますが、これに挙げられていないけどマニュアルには書いてあることを、気づいた範囲で記載してみます。

非推奨関数の追放

リリース記事には無いにしても「あまり語られてない」ではないです、実は。

マニュアルでの書きぶりは「もう非推奨使うのはやめれ」です。非推奨はデフォルトではインストールされません。

非推奨関数をインストールするSQLファイルはありますが、これも書きぶりは「とりあえず動くようにはなるが、早く非推奨を追放して、正式版に戻せ」です。

泣きながら"ST_"を付けて回りましょう。どこかでやらにゃならんことです。

余談ですが、MapServer 6.0.1でも非推奨を取りきれなくて"GeomFromText"が出てました。

空間参照系不明の値

整数の空間参照系IDをいろんなところで使っていますね。不明な場合には、従来は-1でした。OGCでは0なんだがPostGISでは-1になってる、とマニュアルなんかに出てました。これが0になりました。

ただ、2.0.0になってもマニュアルの一部がなおっていませんので、読み替える必要があります。

これまでOGCに逆らってきたのはなんだったんだろうか…。

SRS 900913 が無くなった

どういう議論でそうなったのかは分かりません。ていうかいまsvnのtags見てたら、1.5.3のみ900913があって、1.5.3rcXにも2.0.0系にもありませんでした。1.5.3正式だけある状態。

公式になっている 3857 を使うか、900913を spatial_ref_sys に追加するかしないといけないようです。

KNN GiSTによる検索が微妙

"Index-based high performance nearest-neighbour searching"を指してると思うのですが、違ってたらすみません。

KNN GiSTは、PostgreSQL側で実装されたインデクスです。これは高速なんだそうですが、ジオメトリはfloat8なのに、このインデクス探索ではfloat4ベースにするため、結果に差が出たりするようです。マニュアル参照。