Тип геометрии ArcGIS и PostGIS

PostGIS is a product from Refractions Research that can spatially enable PostgreSQL databases. PostGIS follows the Open Geospatial Consortium, Inc., Simple Features specification for SQL.

При использовании типа хранения PostGIS с ArcGIS нужно учесть следующее:

В следующих разделах представлена более подробная информация об использовании типа хранения геометрии PostGIS в приложениях ArcGIS.

Подготовка базы данных к использованию геометрии PostGIS

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

Для получения версии PostGIS, поддерживаемой ArcGIS, зайдите на веб-сайт PostGIS по адресу http://www.postgis.org/download/ либо на веб-сайт PgFoundry по адресу http://pgfoundry.org/, где вы найдете ссылки для загрузки файлов. Убедитесь, что вы загрузили файлы установки или двоичные файлы, соответствующие вашей операционной системе.

ПодсказкаПодсказка:

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

При установке PostGIS создается шаблон базы данных PostGIS в кластере базы данных PostgreSQL. Используйте шаблон базы данных PostGIS для создания базы данных, в которой будет храниться ваша база геоданных.

ПримечаниеПримечание:

Если база геоданных создается с использованием инструмента геообработки Создать многопользовательскую базу геоданных (Create Enterprise Geodatabase), ваша база данных будет создана с использованием шаблона, отличающегося от шаблона PostGIS. Таким образом, если вы хотите использовать тип геометрии PostGIS, следует создать базу данных вручную с помощью шаблона PostGIS, а затем создать журнал sde, используемый в качестве кластера базы данных и схему sde в базе данных. После этого можно использовать инструмент геообработки Включить многопользовательскую базу геоданных (Enable Enterprise Geodatabase) для создания базы геоданных в существующей базе данных.

Предоставление пользователям прав на создание таблиц со столбцами геометрии PostGIS

Если для базы данных разрешено использование PostGIS, в общей схеме будут созданы две таблицы —geometry_columns и spatial_ref_sys. Как минимум, нужно выдать права SELECT, INSERT, UPDATE и DELETE для столбцов таблицы geometry_columns, а также выбрать SELECT для таблицы spatial_ref_sys для пользователя sde и всех пользователей, которые будут создавать данные в базе геоданных.

GRANT select, insert, update, delete 
ON TABLE public.geometry_columns 
TO <user_name>;

GRANT select
ON TABLE public.spatial_ref_sys
TO <user_name>;

Создание классов пространственных объектов в базе геоданных PostgreSQL с использованием способа хранения PostGIS

После разрешения использования геометрии PostGIS в базе данных вы можете создавать таблицы для хранения пространственной информации, которые содержат столбец геометрии (пространственный столбец). Географические (пространственные) объекты хранятся в пространственных столбцах.

Доступ к таблицам для хранения пространственных данных осуществляется через ArcGIS for Desktop или путем создания приложений, использующих программный интерфейс для приложений ArcSDE C. Опытные программисты SQL также могут использовать вызов пространственных функций.

Создание классов пространственных объектов с использованием ArcGIS

Тип хранения, используемый для классов пространственных объектов, созданных с помощью ArcGIS, контролируется путем настройки параметров в таблице sde_dbtune. Этот параметр имеет название GEOMETRY_STORAGE. В базах геоданных, работающих в базах данных PostgreSQL, используют один из двух типов хранения геометрии: ST_GEOMETRY или PG_GEOMETRY (значение параметра типа хранения PostGIS). Таким образом, если нужно создать класс объектов с использованием ArcGIS на базе типа хранения PostGIS, следует указать ключевое слово конфигурации, которое содержите параметр GEOMETRY_STORAGE, присвоенный для PG_GEOMETRY.

Тип хранения данных ST_Geometry применяется по умолчанию для новых классов объектов в базе геоданных ArcSDE для PostgreSQL. Если нужно сохранить большинство данных с типом хранения PostGIS, измените параметр GEOMETRY_STORAGE в ключевом слове DEFAULTS в таблице sde_dbtune на PG_GEOMETRY. (Используйте команду sdedbtune, чтобы изменить параметры в таблице sde_dbtune. Более подробно о применении этой команды см. в Руководстве по командам администрирования ArcSDE (ArcSDE Administration Command Reference). Если вы хотите хранить только часть ваших классов пространственных объектов, используя тип геометрии PostGIS, то вы можете указать ключевое слово PG_GEOMETRY при создании класса пространственных объектов. В файле dbtune.sde, который можно создать путем экспорта содержимого таблицы sde_dbtune с помощью команды sdedbtune, ключевое слово PG_GEOMETRY будет иметь следующий вид:

##PG_GEOMETRY
GEOMETRY_STORAGE    "PG_GEOMETRY"
UI_TEXT             "User Interface text description for POSTGIS geometry storage" 
END

Остальные параметры хранения будут взяты из ключевого слова DEFAULTS. Более подробную информацию о sde_dbtune можно найти в следующих разделах:

Использование существующих таблиц PostGIS

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

Сведения о создании таблиц со столбцом PostGIS посредством SQL см. в документации PostGIS на сайте PostGIS.org.

Регистрация сторонних таблиц, содержащих столбцы геометрии PostGIS

Можно подключиться к базе данных PostgreSQL, содержащей таблицы PostGIS, через ArcGIS for Desktop и зарегистрировать их в базе геоданных. Дополнительную информацию см. в разделе Регистрация таблицы в базе геоданных.

Где найти документацию по PostGIS и PostgreSQL

Документацию PostGIS можно найти на сайте PostGIS: http://www.postgis.org/documentation/.

Общие сведения о PostgreSQL можно найти в документации на веб-сайте PostgreSQL: http://www.postgresql.org/docs/.

9/11/2013