Дополнения БД могут существенно расширить функциональность базы как сервиса. Например, добавить мониторинг, географические объекты, криптографию.
Установка расширений проводятся в личном кабинете Linx Cloud. Для этого перейдите в раздел «Базы данных» —> «Инстансы баз данных».
Нажмите на базу данных, в которую необходимо установить расширения. Перейдите на вкладку «Расширения» и нажать на кнопку «Добавить».
В открывшимся окне выберите необходимые расширения и нажмите «Добавить».
После начнется установка расширений и они появятся в списке установленных.
PostGIS — расширение объектно-реляционной СУБД PostgreSQL предназначенное для хранения в базе географических данных. PostGIS включает поддержку пространственных индексов R-Tree/GiST и функции обработки геоданных, а также опциональные расширения для работы с адресами и топологией.
После добавления этого расширения в базу можно работать с ней специализированными запросами. Полный перечень запросов и другую полезную информацию можно прочитать на официальном ресурсе.
Вам доступны: point, line, polygon, multipoint, multiline, multipolygon, and geometrycollections (точка, линия, полигон, мультиточка, мультилиния, мультиполигон и геометрическая коллекция). Они определены в формате Well Known Text Open GIS с расширениями XYZ, XYM, XYZM.
Чтобы построить пространственный запрос, вы должны создать таблицу со столбцом типа geometry, который будет содержать ваши ГИС-данные. Соединитесь с вашей базой данных с помощью PSQL и выполните SQL:
Если не получилось добавить столбец геометрии, то, вероятно, вы не загрузили функции и объекты PostGIS в свою базу данных. Смотрите инструкцию по установке.
Далее, вы можете вставлять геометрию в таблицу с помощью SQL-команды insert. Объект ГИС будет форматирован согласно формату well-known text Консорциума OpenGIS:
Подробную информацию о других объектах ГИС можно посмотреть в справочнике объектов. Просмотр ваших ГИС-данных в таблице:
Результат должен выглядеть примерно так:
Так же, как вы строите другие запросы к базе данных, используя SQL-запрос для получения значений, функций, логических тестов.
При построении пространственных запросов следует учитывать:
Чаще всего вам будет нужен «оператор пересечения» (&&), который проверяет пересекаются ли границы объектов. Польза оператора && заключается в том, что он может использовать пространственный индекс, если он существует. Это ускорит выполнения запроса.
Кроме того, вы можете использовать пространственные функции, такие как Distance(), ST_Intersects(), ST_Contains() and ST_Within() и другие для сужения результатов поиска. Большинство пространственных запросов включают тест на индекс и тест на пространственную функцию. Тест индекса полезен тем, что ограничивает число проверок значений теми, которые могут попасть в требуемый набор. Далее используются пространственные функции для окончательной проверки условия.
Название | Описание |
---|---|
Нормализатор адресов. |
|
Нормализатор адресов для США. |
|
Дополнение для работы с TIGER (Topologically Integrated Geographic Encoding and Referencing system). |
|
postgis_topology |
Дополнение для работы с топологией — вершинами, гранями, полигонами и т.д. |
Дополнение для поиска кратчайшего пути. |
Название | Описание |
---|---|
database |
Перечень баз данных, на которых нужно развернуть расширение. Удаление баз данных из этого списка для установленного расширения не поддерживается. |
extension_list |
Список дополнений, которые надо включить (по умолчанию пусто). Удаление параметров из этого списка для установленного расширения не поддерживается. |
Опишите вашу задачу, и мы поможем вам ее решить