Пространственная база данных

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск

Пространственная база данных — база данных (БД), оптимизированная для хранения и выполнения запросов к данным о пространственных объектах, представленных некоторыми абстракциями: точка, линия, полигон и др. (лишь отчасти соответствующих базовым математическим понятиям точка, кривая, полигон).

В то время, как традиционные БД могут хранить и обрабатывать числовую и символьную информацию, пространственные обладают расширенной функциональностью, позволяющей хранить целостный пространственный объект (англ.  feature), объединяющий как традиционные виды данных (описательная часть или атрибутивная), так и геометрические (данные о положении объекта в пространстве). Пространственные БД позволяют выполнять аналитические запросы, содержащие пространственные операторы для анализа пространственно-логических отношений объектов (пересекается, касается, содержится в, содержит, находится на расстоянии X от, совпадает и пр.)[1].

Некоммерческая организация Консорциум «The Open Geospatial Consortium, Inc» (OGC), координирующая разработку международных стандартов в области геоинформационных систем, разработала и утвердила спецификацию на представление базовых типов пространственных объектов Simple Features и установила стандарты на дополнительную функциональность систем управления базами данных (СУБД).

Функциональность пространственных БД[править | править вики-текст]

Традиционные БД используют индексы для быстрого доступа к данным. Однако большинство данных, содержащихся в таких индексах, не оптимально для пространственных запросов. Вместо этого, пространственные БД используют специальные пространственные индексы для ускорения пространственных операций с БД. В дополнение к типичным запросам SQL, типа оператора SELECT, пространственные БД могут выполнять широкий набор пространственных операторов. Консорциумом OGC поддерживаются следующие типы запросов (не ограничиваясь данными):

  • Пространственные измерения (Spatial Measurements): Поиск расстояний между точками, полигонами и т. д.
  • Пространственные функции (Spatial Functions): Модификация существующих объектов (features) для создания новых (например, построение буферных зон вокруг объекта, пересечение объектов и т. д.
  • Пространственные предикаты (Spatial Predicates): Ответы на вопросы типа 'находится ли какое-либо учреждение образования на расстоянии 300 м от предполагаемого места строительства пивного бара?'
  • Функции построения (Constructor Functions): Создание новых объектов с помощью SQL-запросов, посредством указания вершин (положения узлов, точек) линий. Если первая вершина совпадает по координатам с последней, то объект может стать и полигоном, имеющим замкнутую границу.
  • Функции аналитических вычислений (Observer Functions): Запросы, которые возвращают специфическую информацию об объектах. Например, координаты центра окружности.

Не все пространственные БД поддерживают эти типы пространственных операторов в запросах.

Список систем, работающих с пространственными БД[править | править вики-текст]

  • Все продукты, удовлетворяющие спецификациям OGC (открытых ГИС) [1]
  • Открытое программное обеспечение и интерфейсы прикладного программирования (API) для пространственных БД, некоторые из которых соответствуют спецификациям OGC [2]
  • Boeing’s Spatial Query Server (Official Site), превращающий Sybase ASE в систему управления пространственными базами данных (СУПБД).
  • Oracle Spatial
  • Microsoft SQL Server поддерживает пространственные типы данных с версии 2008.
  • PostgreSQL использует пространственное расширение PostGIS для реализации стандартизованного типа данных geometry и соответствующих функций
  • MySQL поддерживает тип данных geometry и некоторые пространственные функции, которые не были реализованы в соответствии со спецификациями OGC. Функции, которые анализируют пространственные отношения объектов ограничены работой с описанным вокруг объекта прямоугольником, нежели с реальной геометрической информацией. Версии MySQL младше 5.0.16 поддерживают пространственные данные только в таблицах MyISAM, старше — дополнительно в таблицах InnoDB, NDB, BDB и ARCHIVE.
  • Spatial Databox [3] быстродействующий механизм анализа пространственных данных с функциями поиска ближайших соседей, решением задач «содержится в»/«содержит» и пространственными выборками на основе мозаичных блоков.

Примечания[править | править вики-текст]

  1. Шекхар Шаши, Чаула Санжей Основы пространственных баз данных. — Москва: Кудиц-образ, 2004. — 336 с. — 3000 экз. — ISBN 0-13-017480-7, 5-93378-091-Х.

Ссылки[править | править вики-текст]