Spatial 索引技术基于传统的分层 B 树索引,但有显著的不同。 Spatial 索引利用网格索引技术,该技术设计成能为二维 Spatial 列建立索引。 B 树索引仅可处理一维数据且不能用于 GIS 信息。 本节描述如何构造和使用 B 树索引。
B 树索引的顶级称作根节点,对于下一级的每个节点它都包含一个关键字。 每个关键字的值是下一级的对应节点的最大现存关键字值。 根据基表中的值的数目,可能需要几个中间节点。 这些中间节点形成根节点和保持实际基表行 ID 的叶节点之间的桥梁。
数据库管理器从根节点开始搜索 B 树索引。 然后它继续通过中间节点,直到到达具有基表的行 ID 的叶节点。
因为 Spatial 列的二维特性需要 Spatial 索引的结构, 所以不能对 Spatial 列应用 B 树索引。 由于相同的原因,不能对非 Spatial 列应用 Spatial 索引。 另外,不能对任何种类的组合列应用 Spatial 索引。