11.4.8 优化空间分析

对于MyISAMInnoDBtable,可以使用SPATIAL索引优化包含空间数据的列中的搜索操作。最典型的操作是:

  • 点查询,搜索包含给定点的所有对象

  • 区域查询搜索与给定区域重叠的所有对象

MySQL 对空间列上的SPATIAL索引使用**具有二次分裂的 R 树*。使用几何的最小边界矩形(MBR)构建SPATIAL索引。对于大多数几何图形,MBR 是围绕几何图形的最小矩形。对于水平或垂直线串,MBR 是退化为线串的矩形。对于一个点,MBR 是退化为该点的矩形。

也可以在空间列上创建普通索引。在非SPATIAL索引中,必须为除POINT列之外的任何空间列声明前缀。

MyISAMInnoDB支持SPATIAL和非SPATIAL索引。其他存储引擎支持非SPATIAL索引,如第 13.1.14 节“ CREATE INDEX 语句”中所述。