开放地理空间联盟(OGC)是一个国际性联盟,拥有超过250家公司、机构和大学,参与开发公开可用的概念解决方案,以便与所有管理空间数据的应用程序集成。
开放地理空间联盟发布了《OpenGIS® 实施标准 - 地理信息 - 简单特征访问 - 第二部分:SQL 选项》,该文档提出了多种概念方式来扩展 SQL RDBMS,以支持空间数据。该规范可从 OGC 网站获取:http://www.opengeospatial.org/standards/sfs。
按照 OGC 规范,MySQL 实现空间扩展作为 SQL 环境的子集,即“带有几何类型的 SQL”。该术语指的是一个 SQL 环境,该环境已经扩展了几何类型。一个几何值的 SQL 列被实现为一个具有几何类型的列。该规范描述了一组 SQL 几何类型,以及在这些类型上创建和分析几何值的函数。
MySQL 空间扩展使得生成、存储和分析地理特征成为可能:
-
表示空间值的数据类型
-
操作空间值的函数
-
空间索引以提高空间列的访问速度
空间数据类型和函数可用于 MyISAM
、InnoDB
、NDB
和 ARCHIVE
表。对于空间列的索引,MyISAM
和 InnoDB
都支持 SPATIAL
和非 SPATIAL
索引。其他存储引擎支持非 SPATIAL
索引,如 第 15.1.15 节“CREATE INDEX 语句”所述。
一个 地理特征 是世界上任何具有位置的实体。一个特征可以是:
-
一个实体。例如,山、池塘、城市。
-
一个空间。例如,城镇地区,热带。
-
一个可定义的位置。例如,十字路口,作为两个街道交叉的特定地点。
一些文档使用术语 地理空间特征 来指代地理特征。
几何 是另一个词语,表示地理特征。最初,词语 几何 意味着测量地球。另一个意思来自制图学,指的是制图学家用来绘制世界的地理特征。
这里的讨论将这些术语视为同义词:地理特征、地理空间特征、特征 或 几何。最常用的术语是 几何,定义为 一个点或表示世界上任何具有位置的聚合点。
以下材料涵盖这些主题:
-
MySQL 中实现的空间数据类型
-
OpenGIS 几何模型中的空间扩展基础
-
表示空间数据的数据格式
-
如何在 MySQL 中使用空间数据
-
使用索引来优化空间数据
-
MySQL 与 OpenGIS 规范的差异
有关操作空间数据的函数,请参阅 第 14.16 节,“空间分析函数”。
附加资源
这些标准对于 MySQL 的空间操作实现非常重要:
-
SQL/MM 第 3 部分:空间。
-
开放地理空间联盟 (Open Geospatial Consortium) 发布了 OpenGIS® 实现标准:地理信息,该文档提出了 several 概念方式来扩展 SQL RDBMS 以支持空间数据。请参阅 Simple Feature Access - Part 1: Common Architecture 和 Simple Feature Access - Part 2: SQL Option。开放地理空间联盟 (OGC) 在 http://www.opengeospatial.org/ 维护一个网站。该规范可在 http://www.opengeospatial.org/standards/sfs 获得。它包含了与这里的材料相关的附加信息。
-
空间参考系统 (SRS) 定义的语法基于 OpenGIS 实现规范:坐标变换服务,修订 1.00,OGC 01-009,2001 年 1 月 12 日,第 7.2 节。该规范可在 http://www.opengeospatial.org/standards/ct 获得。有关 MySQL 中 SRS 定义的差异,请参阅 第 15.1.19 节,“CREATE SPATIAL REFERENCE SYSTEM 语句”。
如果您对 MySQL 空间扩展的使用有疑问或关注,可以在 GIS 论坛中讨论:https://forums.mysql.com/list.php?23。