Postgis что это за программа

PostGIS — это набор расширений для базы данных PostgreSQL. С PostGIS вы можете хранить геопространственные данные и выполнять пространственные запросы в базе данных postgres.

В отличие от стандартных типов данных по умолчанию в обычной базе данных postgres, пространственные данные должны обрабатываться по-разному. Запросы, которые вы можете выполнять в пространственной базе данных, обычно определяются ограничительными рамками в 2 или 3 измерениях. Чтобы хранить, индексировать и обрабатывать эти типы данных, postGIS использует концепцию R-Trees , которая не является частью установки postgres по умолчанию.

С помощью базы данных postGIS вы можете:

  • хранить пространственные данные
  • выполнять пространственные запросы, извлекать и извлекать информацию (точки, области).
  • управлять пространственной информацией и метаданными в таблицах (например: используемая система координат coorinate-reference-system).
  • преобразовывать геометрии из одной системы координат в другую
  • сравнить геометрию и свойства экстракта (например: длина кромки дороги или здания)
  • генерировать новые геометрии у других.

Версии

Последние выпуски функций Официальная документация Дата выхода
2.3.0 HTML , PDF 2016-09-26
2.2.0 HTML , PDF 2015-10-07
2.1.0 HTML , PDF 2013-08-17
2.0.0 HTML , PDF 2012-04-03
1.5.0 2010-02-04
1.4.0 2009-07-24
1.3.0 2007-08-09
1.2.0 2006-12-08
1.1.0 2005-12-21
1.0.0 2005-04-19

Установка через диспетчер пакетов

Arch:

Иван Муратов PostgreSQL + PostGIS + TimescaleDB хранилище для систем мониторинга транспорта

Доступен официальный пакет pacman. Установите пакет как root, используя:

pacman -S postgis

OpenSuse:

Чтобы использовать репозитории openSuse для геопространственных приложений, включите Geo-репозиторий как root:

zypper ar http://download.opensuse.org/repositories/Application:/Geo/openSUSE_[RELEASE]/ GEO

где [RELEASE] — официальный номер выпуска вашего Suse-дистрибутива. После этого вы можете установить postgis с:

zypper install postgis

Установка из источника (с Postgres 9.1 или новее)

Это руководство явно относится к PostgreSQL 9.1 или выше на Linux-машинах. Он использует функцию расширения postgres, которая значительно улучшит импорт расширений в существующую postgres-установку. Если вам нужно работать со старой версией postgres, обратитесь к официальным документам .

Урегулировать зависимости

PostGIS — это сложный проект с несколькими зависимостями. Чтобы продолжить процедуру ручной настройки и сборки, вам придется решить эти зависимости и установить следующие пакеты вручную или через пакет-менеджеров.

  • PostgreSQL 9.1 или выше. Важно, чтобы вы устанавливали базу данных, включая заголовки серверов, обычно встречающиеся в dev -пакетах пакета-менеджера вашего репозитория.
  • Компилятор GNU C gcc .
  • GNU make . Чтобы завершить процесс сборки.
  • Proj4 . Проекционная библиотека для согласованных преобразований.
  • GEOS . Библиотека геометрии, которая реализует описания функций и простые геометрии. Версии 3.5 или выше рекомендуется для использования более новых функций, таких как ST_ClipByBox2D и ST_Subdivide .
  • GDAL , версия 1.9 или выше. Библиотека, которая реализует абстрактные форматы данных для растровых и векторных геопространственных данных.
  • LibXML2 , версия 2.5 или выше. Либрайер для работы с XML, XSLT и DTD.
  • JSON-C , версия 0.9 или выше. Библиотека для создания вывода в формате JSON
  • GTK (требуется GTK + 2.0, 2.8+) для компиляции shp2pgsql-gui.
  • SFCGAL , версия 1.1 (или выше) может использоваться для предоставления дополнительных функций расширенного анализа 2D и 3D для PostGIS.
  • PCRE . Библиотека для сопоставления регулярных выражений с использованием синтаксиса Perl 5. Эта библиотека необходима, если вы хотите работать со стандартным редактором .
  • CUnit . Утилита тестирования модулей, необходимая для регрессионного тестирования.
  • Для создания документации требуется DocBook (xsltproc).
  • DBLatex требуется для создания документации в формате PDF.
  • ImageMagick требуется для создания изображений, используемых в документации.

Получить источники

Daniel Silk: 10 Things I’ve Learnt About PostGIS

Чтобы получить исходный код, загрузите последний архив:

wget http://postgis.net/stuff/postgis-2.3.2dev.tar.gz tar -xvzf postgis-2.3.2dev.tar.gz

или использовать официальный SVN-репозиторий:

svn checkout http://svn.osgeo.org/postgis/trunk/ postgis-2.3.2dev

конфигурация

Если вы получили источники через SVN, вы можете подготовить конфигурационный скрипт с помощью:

./autogen.sh

Чтобы настроить процесс сборки для вашей конкретной машины, запустите в папке проекта:

./configure

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

Читайте также:
Программа участка депо что это

строить

Как только шаг конфигурации завершится успешно, будет создан make-файл. Чтобы запустить процесс сборки, выполните следующие действия:

make

Последний выход должен быть:

«PostGIS was built successfully. Ready to install.»

Начиная с версии 1.4.0, все функции имеют комментарии, созданные из документации. Если вы хотите позже установить эти комментарии в свои пространственные базы данных, запустите команду, требующую docbook.

make comments

Монтаж

Установите все расширения с помощью:

make install

Расширения PostGIS создаются и устанавливаются автоматически, если вы используете PostgreSQL 9.1 или выше. Вы можете установить необходимые расширения вручную, если у вас есть другая настройка.

В папке проекта:

cd extensions cd postgis make clean make make install cd .. cd postgis_topology make clean make make install cd .. cd postgis_sfcgal make clean make make install cd .. cd address_standardizer make clean make make install make installcheck cd .. cd postgis_tiger_geocoder make clean make make install make installcheck

Если вы хотите установить расширения вручную на другой машине, скопируйте следующие файлы из папки extensions папку PostgreSQL/share/extension -target. Для каждого расширения:

scp extensions/[EXTENSION]/sql/*.sql [email protected]:[POSTGIS_PATH]/share/extension

где [EXTENSION] — выбранное расширение (postgis, postgis_topology, postgis_sfcgal, address_standardizer, postgis_tiger_geocoder), а [POSTGIS_PATH] — путь установки PostGIS на вашей целевой машине.

Проверка установки

Если у вас нет службы баз данных postgres, сначала настройте свою базу данных postgres . Подключитесь к базе данных, используя:

su postgres -c psql

Чтобы убедиться, что расширения доступны, запустите следующие запросы в psql-сеансе:

SELECT name, default_version,installed_version FROM pg_available_extensions WHERE name LIKE ‘postgis%’ or name LIKE ‘address%’;

Результат должен выглядеть следующим образом:

name | default_version | installed_version ——————————+——————+——————- address_standardizer | 2.3.2dev | 2.3.2dev address_standardizer_data_us | 2.3.2dev | 2.3.2dev postgis | 2.3.2dev | 2.3.2dev postgis_sfcgal | 2.3.2dev | postgis_tiger_geocoder | 2.3.2dev | 2.3.2dev postgis_topology | 2.3.2dev | (6 rows)

Чтобы выполнить углубленный тест после установки, выполните следующую команду в папке проекта:

make check

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

Настройка геопространственной базы данных

Чтобы создать новую пустую базу данных, запустите ее как postgres-user:

createdb [yourdatabase]

Подключитесь к базе данных с помощью psql-сессии:

psql -d [yourdatabase]

В сеансе psql-session:

CREATE EXTENSION postgis; CREATE EXTENSION postgis_topology;

для создания необходимых геопространственных расширений. Как только это будет сделано, база данных — это база данных с поддержкой геопространства, и она готова к использованию.

Геопространственный «Hello World»

В этом примере мы создадим геопространственную базу данных, импортируем данные из двух разных источников и рассмотрим результаты в приложении QGIS. Это руководство явно написано для linux-машин, если вы работаете на другой платформе, некоторые команды или пути могут работать не так, как ожидалось.

Чтобы просмотреть импортированные данные, мы будем использовать приложение QGIS . Если у вас нет этого приложения, пожалуйста, установите его первым , если вы хотите использовать другой просмотрщик или геоприложение (например, ArcGIS), вы можете пропустить установку QGIS.

Нашими источниками будут кварталы госсекретарей штата Нью-Йорк и база данных улиц Нью-Йорка LION Street . Загрузите соответствующие файлы из связанных мест. Вы также должны взглянуть на раздел метаданных материала, так как он дает вам информацию о том, какая система координат используется этими файлами.

Для начала создайте рабочую папку «nycgis», скопируйте загруженные файлы в папку и распакуйте архивы.

mkdir nycgis cd nycgis cp ~/Downloads/nyad_16d.zip . unzip ~/Downloads/nyad_16d.zip cp ~/Downloads/nylion_16d.zip . unzip ~/Downloads/nylion_16d.zip

В папке «nycgis» у вас должно быть 2 папки: «nyad_16d», «lion» с несколькими файлами.

При работе с геоданными жизненно важно знать координатную систему координат (CRS) исходных данных и конечные выходные данные. В разделах «Метаданные» связанных местоположений ( Метаданные: Сборочные округа , Метаданные: база данных LION ) вы обнаружите, что CRS для обоих файлов — EPSG: 2263, система координат, используемая для ссылки на северо-восток США.

Предположим, мы хотим использовать другую CRS в нашей базе данных. Это может иметь разные причины, мы могли бы захотеть работать с веб-геоприложением в базе данных, например. Общим CRS для такого типа приложений является WGS: 84 (EPSG: 4326).

Чтобы преобразовать системы координат, мы используем инструмент, называемый ogr2ogr является частью пакета GDAL. В рабочей папке мы сначала создаем 2 папки, представляющие перепрограммированные данные, а затем преобразуем наши данные.

Читайте также:
Comsol multiphysics что это за программа

mkdir nyad_16d_proj_4326 ogr2ogr -f «ESRI Shapefile» ./nyad_16d_proj_4326/nyad_4326.shp ./nyad_16d/nyad_16d.shp -s_srs EPSG:2263 -t_srs EPSG:4326 mkdir nylion_16d_proj_4326 ogr2ogr -f «ESRI Shapefile» ./nylion_16d_proj_4326/ny_str_4326.shp ./nylion_16d/lion/lion.gdb/a0000000d.gdbtable -s_srs EPSG:2263 -t_srs EPSG:4326

Обратите внимание, что для наших целей мы используем только файл «a0000000d.gdbtable» LION-Database. Синтаксис ogr2ogr -команда выглядит следующим образом :

ogr2ogr -f [output-format] [output-file] [input-file] -s_srs [source crs] -t_srs [target crs]

Теперь у нас есть 2 шейп-файла, спроектированных в правильной CRS. Чтобы использовать данные в нашей базе данных, мы должны преобразовать шейп-файлы в sql-statemens. Для этого мы используем инструмент shp2pgsql . В рабочем каталоге выполните следующие команды:

shp2pgsql ./nyad_16d_proj_4326/nyad_4326.shp > nyad_4326.sql shp2pgsql ./nylion_16d_proj_4326/ny_str_4326.shp > ny_streets_4326.sql

Файлы nyad_4326.sql и ny_streets_4326.sql теперь готовы к использованию в postgis. Чтобы продолжить и импортировать данные, создайте пространственно разрешенную базу данных.

sudo su — postgres createdb nycgis psql -d nycgis

В psql-сеансе выполните:

CREATE EXTENSION postgis; CREATE EXTENSION postgis_topology;

Выйдите из сеансов psql- и postgres-user с помощью (CTRL + D). И импортируйте файлы с помощью:

psql -f nyad_4326.sql -d nycgis psql -f ny_streets_4326.sql -d nycgis

В базе данных nycgis теперь есть 2 таблицы, в которых успешно были импортированы nycgis источники.

Чтобы проверить это: открыть QGIS

  1. используйте Layer >Add Layer >PostGIS-Layer
  2. подключиться к вашей базе данных
  3. выберите свои таблицы
  4. (необязательно) установить стиль вновь созданных слоев.

QGIS-Скриншот

Et voilà: теперь у вас есть пространственно разрешенная база данных с импортированными, перепрограммированными геоданными.

Источник: learntutorials.net

Руководство по PostGIS

PostGIS — расширение объектно-реляционной СУБД PostgreSQL предназначенное для хранения в базе географических данных. PostGIS включает поддержку пространственных индексов R-Tree/GiST и функции обработки геоданных.

Это руководство актуально для версии 1.3.4 (оригинал пособия). Последняя версия руководства: 1.4SVN

О переводе

Основная работа по переводу выполнена Дмитрием Скоробогатовым. Правка, редакция и обновление: Максим Дубинин. Перевод максимально приближен к оригиналу. В оригинале замечены некоторые ошибки, связанные со ссылками на не вышедшую пока версию 1.3.4., ссылки исправлены на текущую версию 1.3.3.

Версия для загрузки в формате PDF, 1Mb (загрузить).

В процессе перевода и редакции был составлен небольшой вспомогательный словарь терминов.

  • 1. Предисловие
  • 1.1. Благодарности
  • 1.2. Дополнительная информация
  • 2.1. Требования
  • 2.2. PostGIS
  • 2.2.1. Создание пространственных баз данных, совместимых с PostGIS, с помощью шаблона разработки
  • 2.2.2. Обновление
  • 2.2.3. Обычные проблемы
  • 4.1. Объекты ГИС
  • 4.1.1. OpenGIS WKB и WKT
  • 4.1.2. PostGIS EWKB, EWKT и Канонические формы
  • 4.1.3. SQL-MM часть 3
  • 4.2.1. Таблица SPATIAL_REF_SYS
  • 4.2.2. Таблица GEOMETRY_COLUMNS
  • 4.2.3. Создание пространственной таблицы
  • 4.2.4. Обеспечение геометрий, согласованных с OpenGIS
  • 4.3.1. Использование SQL
  • 4.3.2. Использование загрузчика
  • 4.4.1. Использование SQL
  • 4.4.2. Использование дампера
  • 4.5.1. Индексы GiST
  • 4.5.2. Использование индексов
  • 4.6.1. Преимущества индексов
  • 4.6.2. Примеры пространственного SQL
  • 4.7.1. Основы использования
  • 4.7.2. Часто задаваемые вопросы
  • 4.7.3. Продвинутое использование
  • 4.7.4. Примеры
  • 4.9.1. Текстовые указатели
  • 4.9.2. Бинарные указатели
  • 5.1. Маленькие таблицы больших геометрий
  • 5.1.1. Описание проблемы
  • 5.1.2. Как обойти проблему
  • 6.1. Функции OpenGIS
  • 6.1.1. Функции управления
  • 6.1.2. Функции геометрической связи
  • 6.1.3. Функции обработки геометрии
  • 6.1.4. Геометрические способы доступа
  • 6.1.5. Геометрические конструкторы
  • 6.2.1. Функции управления
  • 6.2.2. Операторы
  • 6.2.3. Функции измерения
  • 6.2.4. Геометрический вывод
  • 6.2.5. Геометрические конструкторы
  • 6.2.6. Геометрические редакторы
  • 6.2.7. Линейные ссылки
  • 6.2.8. Разное
  • 6.2.9. Поддержка долгих транзакций
  • 7.1. Сообщения об ошибках в программном обеспечении
  • 7.2. Сообщения об ошибках в документации
  • A.1. Примечания к релизам
  • A.1.1. Релиз 1.3.3
  • A.1.2. Релиз 1.3.2
  • A.1.3. Релиз 1.3.1
  • A.1.4. Релиз 1.3.0
  • A.1.5. Релиз 1.2.1
  • A.1.6. Релиз 1.2.0
  • A.1.7. Релиз 1.1.6
  • A.1.8. Релиз 1.1.5
  • A.1.9. Релиз 1.1.4
  • A.1.10. Релиз 1.1.3
  • A.1.11. Релиз 1.1.2
  • A.1.12. Релиз 1.1.1
  • A.1.13. Релиз 1.1.0
  • A.1.14. Релиз 1.0.6
  • A.1.15. Релиз 1.0.5
  • A.1.16. Релиз 1.0.4
  • A.1.17. Релиз 1.0.3
  • A.1.18. Релиз 1.0.2
  • A.1.19. Релиз 1.0.1
  • A.1.20. Релиз 1.0.0
  • A.1.21. Релиз 1.0.0RC6
  • A.1.22. Релиз 1.0.0RC5
  • A.1.23. Релиз 1.0.0RC4
  • A.1.24. Релиз 1.0.0RC3
  • A.1.25. Релиз 1.0.0RC2
  • A.1.26. Релиз 1.0.0RC1

Последнее обновление: September 02 2010

Источник: gis-lab.info

PostGIS в PostgreSQL — как можно использовать

Использование системы управления объектно-реляционными базами данных PostgreSQL в сочетании с расширением PostGIS дает большие возможности для работы с пространственными данными — в руки программиста попадает больше инструментов и механик. При этом повсеместное внедрение этой связки тормозит недостаточное понимание её возможностей.

Читайте также:
Программа аксесс что это такое

Рассмотрим, как PostGIS применяют в связке с PostgreSQL в теории и на практике.

Что такое PostGIS

PostGIS — программное расширение с открытым исходным кодом, расширяющее пространственную базу данных системы управления PostgreSQL. Расширение добавляет поддержку географических объектов, благодаря чему появляется возможность выполнять запросы местоположения в SQL.PostGIS позволяет хранить ряд географических и пространственных данных — точек, ломаных линий, полигонов, растр, а также использовать их для разных операций, например, поиска.

В комбинации с PostgreSQL расширение PostGIS является одним из ведущих ГИС-решений, которое используется во многих крупных интерфейсных геолокационных приложениях, связанных с поиском координат и объектов на карте и получением информации о них.

Например, данные PostGis могут использоваться такими картографическими приложениями, как MapServer, GRASS, uDig, QGIS, GDAL/OGR, FeatureServer, GeoServer, SharpMap, gvSIG.

Как используют PostGIS в связке с PostgreSQL

PostgreSQL имеет поддержку собственных геометрических типов, но их функциональность ограничена — она подходит для научных исследований и выстраивания компьютерной графики (статичных визуальных карт), но недостаточна для ГИС-данных или проведения сложного анализа.

PostGIS в PostgreSQL используется для снятия ограничений, расширения функций и позволяет применять:

  • пространственные предикаты (утверждения, высказанные о субъекте) для определения взаимодействий геометрий с применением 3×3 DE-9IM;
  • пространственные индексы R-tree -over- GiST для быстрых пространственных запросов;
  • пространственные операторы для проведения геопространственных вычислений и определения геопространственного набора операций (объединение, разность, симметричная разность);
  • растровые данные;
  • функции создания геометрий и управления ими (создание и удаление полей с географическими данными, запросы скриптов, библиотек);
  • функции редактирования геометрий и их форматированного вывода;
  • расширенные 2D- и 3D-функции, в том числе для определения пересечений в 3D-пространстве);
  • инструменты для определения пространственных отношений и измерений (например, для сравнения расстояния по плоскости и на сфере);
  • функции создания и отображения растров в удобном формате (например, в JPEG или PNG);
  • инструменты обработки растров (очищение рельефа, векторизация, увеличение или уменьшение яркости);
  • функции редактирования каналов растра;
  • топологию и экстра-функции.

PostgreSQL может работать под управлением сервиса Relational Database Service. Сервис имеет поддержку PostGIS, read-реплик, а также MySQL, Microsoft SQL Server и функции автоматического резервного копирования баз данных.

При выборе решения для управления базами данных приходится учитывать сразу несколько факторов, особенно когда требуется организовать высокодоступную отказоустойчивую систему. Автоматическое резервное копирование и поддержка архитектуры primary/standby с возможностью разнесения инстансов по разным зонам доступности делают RDS оптимальным выбором для производственных баз данных на крупных и средних проектах, для приложений в IoT, e-commerce, логистике и геймдеве Сергей Кулаков Старший технический писатель, SberCloud.

Примеры использования PostGIS для реальных задач

Возможности связки PostGIS и PostgreSQL на практике могут использоваться для определения:

  • расстояния от точки до точки;
  • ближайшей точки между извилистыми улицами на местности;
  • улицы или даже дома по определенным координатам;
  • количества домов, попадающих в заданную область пространства;
  • количества объектов, находящихся поблизости с заданной точкой;
  • площади, расстояний, длин, периметров заданных объектов и множества других данных.

Например, PostgreSQL с предустановленным расширением PostGIS может использоваться для:

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

Вариантов использования PostGIS для реальных задач много, и на практике они ограничены только конкретными задачами бизнеса.

Стоит отметить, что функциональность PostgreSQL с PostGIS также зависит от параметров используемой базы данных: её актуальности, детальности и достоверности.

Что в итоге

Расширение PostGIS для системы управления базами данных PostgreSQL — отличная альтернатива для большинства коммерческих продуктов (в том числе собственных геометрических типов), которая дает широкий набор инструментов для работы с пространственными данными. Работа PostGIS на базе PostgreSQL обеспечивает надежность, открытость и соответствие стандартам.

Возможности применения расширения очень большие, благодаря чему оно активно используется, а его регулярное обновление дает большие перспективы для дальнейшего применения.

  1. PostGIS tips: Where to get started
  2. PostGIS
  3. УСТАНОВКА И НАСТРОЙКА POSTGIS В UBUNTU 14.04

Запросите бесплатную консультацию по вашему проекту

Источник: cloud.ru

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru