MySQL 8.0 リファレンスマニュアル


MySQL 8.0 リファレンスマニュアル  /  ...  /  空間分析の最適化

11.4.9 空間分析の最適化

MyISAM および InnoDB テーブルの場合、空間データを含むカラムでの検索操作は、SPATIAL インデックスを使用して最適化できます。 もっとも典型的な操作は次のとおりです。

  • 指定された点を含むすべてのオブジェクトを検索する点クエリー

  • 所定の領域と重なるすべてのオブジェクトを検索する領域クエリー

MySQL では、2 次分割 R ツリーを使用して空間カラムの SPATIAL インデックスが実装されています。 SPATIAL インデックスは、ジオメトリの最小境界矩形 (MBR) を使用して構築されます。 大部分のジオメトリでは、MBR はそのジオメトリを囲む最小矩形となります。 水平または垂直方向のライン文字列では、MBR は矩形からライン文字列に縮退します。 点の場合、MBR は矩形から点に縮退します。

空間カラムに通常のインデックスを作成することも可能です。 非 SPATIAL インデックスでは、POINT カラムを除くすべての空間カラムでプリフィクスを宣言する必要があります。

MyISAM および InnoDB では、SPATIAL インデックスと SPATIAL 以外のインデックスの両方がサポートされます。 その他のストレージエンジンはセクション13.1.15「CREATE INDEX ステートメント」で説明しているように、非 SPATIAL インデックスをサポートします。


関連キーワード:  空間, クラス, インデックス, 分析, カラム, リファレンス, SPATIAL, マニュアル, 数値, InnoDB