Spec-Zone.ru › MySQL 5.7

11.4 Типы пространственных данных

  • 11.4.1 Обзор типов пространственных данных
  • 11.4.2 Модель геометрии OpenGIS
  • 11.4.3 Поддерживаемые форматы пространственных данных
  • 11.4.4 Корректность и валидность геометрии
  • 11.4.5 Создание пространственных столбцов
  • 11.4.6 Заполнение пространственных столбцов
  • 11.4.7 Извлечение пространственных данных
  • 11.4.8 Оптимизация пространственного анализа
  • 11.4.9 Создание пространственных индексов
  • 11.4.10 Использование пространственных индексов

Международный консорциум Open Geospatial Consortium (OGC) объединяет более 250 компаний, агентств и университетов, участвующих в разработке общедоступных концептуальных решений, полезных для различных приложений, работающих с пространственными данными.

Консорциум Open Geospatial Consortium публикует Стандарт реализации OpenGIS® для географической информации — Доступ к простым объектам — Часть 2: Вариант SQL, документ, предлагающий несколько концептуальных способов расширения реляционной базы данных SQL для поддержки пространственных данных. Этот стандарт доступен на сайте OGC по адресу http://www.opengeospatial.org/standards/sfs.

В соответствии со спецификацией OGC, MySQL реализует пространственные расширения как подмножество среды SQL с типами геометрии. Этот термин относится к среде SQL, расширенной набором типов геометрии. Столбец SQL со значениями геометрии реализуется как столбец типа геометрии. Спецификация описывает набор типов геометрии SQL, а также функции для создания и анализа значений геометрии.

Пространственные расширения MySQL позволяют генерировать, хранить и анализировать географические объекты:

  • Типы данных для представления пространственных значений

  • Функции для манипулирования пространственными значениями

  • Пространственный индексирование для повышения скорости доступа к пространственным столбцам

Типы пространственных данных и функции доступны для таблиц, использующих MyISAM, InnoDB, NDB и ARCHIVE. Для индексирования пространственных столбцов, MyISAM и InnoDB поддерживают как SPATIAL, так и не-SPATIAL индексы. Другие движки баз данных поддерживают не-SPATIAL индексы, как описано в Разделе 13.1.14, «CREATE INDEX Statement».

Географический объект — это любой объект в мире, имеющий местоположение. Объект может быть:

  • Сущностью. Например, гора, озеро, город.

  • Пространством. Например, район города, тропики.

  • Определяемым местоположением. Например, перекресток, как определённое место пересечения двух улиц.

Некоторые документы используют термин геопространственный объект для обозначения географических объектов.

Геометрия — ещё один термин, обозначающий географический объект. Изначально термин геометрия означал измерение Земли. Другое значение, взятое из картографии, относится к геометрическим объектам, используемым картографами для отображения мира.

В данном обсуждении эти термины считаются синонимами: географический объект, геопространственный объект, объект или геометрия. Наиболее часто используемым термином является геометрия, определяемая как точка или совокупность точек, представляющая любой объект в мире, имеющий местоположение.

В данном материале рассматриваются следующие темы:

  • Типы пространственных данных, реализованные в модели MySQL

  • Основы пространственных расширений в модели геометрии OpenGIS

  • Форматы данных для представления пространственных данных

  • Как использовать пространственные данные в MySQL

  • Использование индексирования для пространственных данных

  • Отличия MySQL от спецификации OpenGIS

Сведения о функциях, работающих с пространственными данными, см. в Разделе 12.16, «Функции пространственного анализа».

Соответствие и совместимость MySQL GIS

MySQL не реализует следующие функции GIS:

  • Дополнительные представления метаданных

    Спецификации OpenGIS предлагают несколько дополнительных представлений метаданных. Например, системное представление, названное GEOMETRY_COLUMNS, содержит описание столбцов геометрии, по одной строке для каждого столбца геометрии в базе данных.

  • Функция OpenGIS Length() над LineString и MultiLineString в MySQL должна вызываться как ST_Length()

    Проблема в том, что существует существующая функция SQL Length(), вычисляющая длину строковых значений, и иногда невозможно отличить, вызвана ли функция в текстовом или пространственном контексте.

Дополнительные ресурсы

Open Geospatial Consortium публикует Стандарт реализации OpenGIS® для географической информации — Доступ к простым объектам — Часть 2: Вариант SQL, документ, предлагающий несколько концептуальных способов расширения реляционной базы данных SQL для поддержки пространственных данных. Консорциум Open Geospatial Consortium (OGC) поддерживает веб-сайт по адресу http://www.opengeospatial.org/. Там же доступна спецификация по адресу http://www.opengeospatial.org/standards/sfs. Она содержит дополнительную информацию, относящуюся к данному материалу.

Если у вас есть вопросы или замечания по использованию пространственных расширений MySQL, обсудите их на форуме GIS: https://forums.mysql.com/list.php?23.

© 2025 Oracle
Licensed under the GPLv2 License.
https://docs.oracle.com/cd/E17952_01/mysql-5.7-en/spatial-types.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API