sql >> データベース >  >> RDS >> PostgreSQL

PostgreSQLの空間データ

    まず、GiSTインデックスを明確にします。GiSTは実際には、特定のインデックススキーム自体ではなく、新しいデータ型のインデックスを作成するためのフレームワークです。このフレームワークは、Postgresに付属する幾何学的タイプに使用されますが、標準のテキスト列のトリグラムマッチングテキスト類似性インデックスにも使用されます。もちろん、多くの外部パッケージのインデックススキームで使用されます。番号PostGIS。

    標準の幾何学的データ型が機能するか、PostGISが必要かは、アプリケーションに完全に依存します。

    PostGISは「geometry」タイプの列に幾何学的データを保存します。これには、多かれ少なかれ任意のデータ(ポイント、円、ポリゴン、何を持っているか)を保存できます。インデックス作成は高速で非常に洗練されています。他の方法では合理的な方法でインデックス作成できない複雑な形状のバウンディングボックスを使用して、損失の多いインデックス作成などを行うことができます。クエリ結果の自動変換を使用して、さまざまな空間参照系がサポートされています。 PostGISは、他のシステムとのデータ共有に役立つ業界標準のOpenGIS形式もサポートしています。

    対照的に、内部の幾何学的タイプとそのインデックスのセットは、それほど洗練されていません。実際の「一般的な」ジオメトリタイプはありません。代わりに、列のタイプを点、線、円、多角形、または何を持っているかを選択する必要があります。組み合わせの場合、おそらく複数の列を使用する必要があります。インデックス付けはそれほど良くありません。インデックスを作成できるさまざまなタイプの形状はそれほど多くありません(ただし、別の列を使用してバウンディングボックスを手動で生成することで、バウンディングボックスのサポートを追加できます)。また、状況によっては、インデックスの速度が遅くなる可能性があります。一方、内部のジオメトリタイプがニーズを満たす場合は、PostgresはインストールされているがPostGISがインストールされていない他のシステムにアプリケーションを簡単に移植できるという利点があります。

    私のアドバイスは、内部の幾何学的タイプをいじって、それがどれだけうまくいくかを確認することです。問題が発生し始めたら、PostGISを試してみてください。




    1. OracleCloudPlatform上のOracleDatabase12cでのOracleJDeveloper12cの使用、パート3

    2. Oracleは、選択時に異なるケースに対して同じエイリアスを返します

    3. PostgreSQL関数からSETOF行を返します

    4. psqlでポケットベルをカスタマイズする