Статьи

Базы данных и географы

Полезные ресурсы
🤔Интересный факт: каждый день человечество генерирует около 25 петабайт данных. Значительная часть больших данных – это геопространственные данные, которые растут день за днем примерно на 20%. При этом геопростанственные данные всегда считались большими (Das и др., 2018, с. 255).

🙆‍♂️Многие люди хранят данные в табличках, но, когда речь заходит о больших данных – это становится неэффективным решением, для этого и созданы базы данных. Данными в БД оперируют с помощью языка запросов SQL (Standard Query Language). Как и обычные данные, геопространственные данные могут храниться в базах данных. К примеру, в системе управления базами данных (СУБД) PostgreSQL есть расширение PostGIS, которое позволяет хранить и анализировать данные с геопривязкой.

🌍PostGIS добавляет в PostgreSQL пространственные функции, такие как расстояние, площадь, объединение, пересечение и специальные типы данных геометрии. Пространственные базы данных хранят пространственные объекты и управляют ими, как любым другим объектом. В БД хранятся различные типы данных: числовые, текстовые, булевые и тд. С расширеннием PostGIS, в пространственной БД, данные также могут иметь тип геометрии в определенной системе координат, определяемой идентификатором пространственной привязки (SRID).

Чтобы ответить на интересующий вопрос, необходимо написать SQL-запрос к БД. Например, пространственные SQL-запросы могут отвечать на такие вопросы, как «где находится ближайший магазин», «находится ли эта точка внутри этой области» или «каковы размеры этой страны». Только представьте, как быстро и эффективно вы можете анализировать большие объемы данных с помощью правильно составленных запросов SQL!

Специальные функции PostGIS обычно имеют форму ST_functionName. Вы пишете эти команды в командной строке после входа в вашу базу данных или в графическом интерфейсе вашей базы данных (например, pgAdmin или QGIS DB Manager). SQL требует, чтобы вы написали запрос своими руками! Для тех, кто никогда не программировал, SQL – это первый шаг для написания команд и, возможно, кода.

🌍Помимо PostgreSQL с расширением PostGIS, существуют и другие пространственные базы данных. SQL Server Spatial, ESRI ArcSDE, Oracle Spatial и GeoMesa — это еще несколько вариантов управления и анализа пространственных данных. Но говорят, что PostGIS имеет больше функций и в целом лучшую производительность. Также другие упомянутые (кроме GeoMesa) не имеют открытого исходного кода, в отличие от PostGIS.


Источники:
Das, H., Barik, R. K., Dubey, H., & Roy, D. S. (2018). Cloud Computing for Geospatial Big Data Analytics: Intelligent Edge, Fog and Mist Computing. Springer.
Больше инсайтов об использовании PostGIS от Topi Tjukanov:
https://medium.com/@tjukanov/why-should-you-care-about-postgis-a-gentle-introduction-to-spatial-databases-9eccd26bc42b