Вы можете подключиться из клиентов ArcGIS и работать с данными в системах управления базами данных или устройствах хранения данных, перечисленных здесь. Подробнее об использовании баз данных в ArcGIS Server см. Базы данных и ArcGIS Enterprise.
Системы управления базами данных отличаются своей реализацией и предоставляемой функциональностью. В результате иногда они выдают предупреждения или устанавливают необходимые правила, которые необходимо учитывать при работе с каждым типом баз данных в ArcGIS. Они перечислены в следующих разделах.
Dameng
Пространственные данные хранятся в типе геометрии Dameng. Обычная установка Dameng включает пространственный тип; однако чтобы его использовать, его необходимо инициализировать.
IBM Db2
Db2 проверяет подлинность подключения к базе данных при помощи учетных записей операционной системы. Однако при подключении к Db2 из диалогового окна Подключения к базам данных или при помощи инструмента геообработки Создать подключение базы данных можно задать опцию Аутентификация базы данных. Это позволит сохранить определенное имя пользователя и пароль учетной записи, которая необходима, если подключение к базе данных будет регистрироваться в ArcGIS Server.
Для запроса данных об объектах в ArcGIS требуется, чтобы таблица содержала поле уникального идентификатора. ArcGIS ссылается на базу данных, чтобы вставить значения в поле уникального идентификатора при создании новых объектов. В силу того, что в Db2 z/OS нет типа данных или встроенного механизма для заполнения значений в поле ID, инструменты ArcGIS, создающие новые строки в таблице базы данных, не могут использоваться с базами данных Db2 z/OS. Также, из-за того что невозможно вставить объекты в таблицу Db2 z/OS из ArcGIS, невозможно публиковать сервисы объектов, содержащие данные из базы данных Db2 z/OS.
Если вам необходима такая функциональность, как вложения, архивирование, топология, версии базы геоданных для одновременного редактирования, возможность репликации данных, или если вы хотите публиковать сервисы объектов, содержащие данные из Db2 z/OS, можно в базу данных Db2 включить базу геоданных.
IBM Informix
Informix проверяет подлинность подключения к базе данных при помощи учетных записей операционной системы. При подключении к Informix из диалогового окна Подключения к базам данных или при помощи инструмента геообработки Создать подключение базы данных можно задать опцию Аутентификация базы данных. Это позволит сохранить определенное имя пользователя и пароль учетной записи, которая необходима, если подключение к базе данных будет регистрироваться в ArcGIS Server.
Если вам необходима такая функциональность, как вложения, архивирование, топология, версии базы геоданных для одновременного редактирования или возможность репликации данных, можно в базу данных Informix включить базу геоданных.
IBM Netezza Data Warehouse Appliance
IBM Netezza Data Warehouse Appliance является устаревшим, начиная с данной версии.
Устройства хранения данных обычно хранят большой объем данных. Чтобы использовать ArcGIS для визуализации, выполнения анализа или публикации данных в Netezza, воспользуйтесь поднабором данных. Способ выполнения предопределяется тем, что вы будете делать с данными.
- Если вы добавляете данные в ArcMap или ArcGIS Pro для их просмотра и анализа на карте, добавьте слой запроса и задайте выражение слоя запроса, чтобы выбрать поднабор данных.
- Если вы добавляете данные в ArcMap для публикации картографического сервиса или ArcGIS Pro для публикации слоя изображений карты, которые ссылаются на зарегистрированные данные, задайте представление базы данных, содержащее только поднабор данных. Представления базы данных хранятся в базе данных. Можно воспользоваться инструментом геообработки Создать представление базы данных или клиентским приложением SQL, чтобы задать представление.
- Если вы добавляете данные в ArcMap для публикации сервиса объектов или публикации на портале, снимите отметку Делать вновь добавляемые слои видимыми по умолчаниюперед добавлением данных на карту. Далее откройте Свойства слоя и создайте Определяющий запрос, указывающий поднабор данных при помощи SQL. После того как вы ограничили данные, которые отобразятся на карте, сделайте слой видимым и подготовьте свою карту к публикации.
- Если вы добавляете данные в ArcGIS Pro для публикации векторного слоя, который ссылается на зарегистрированные данные, или для публикации на портале, снимите отметку Делать вновь добавляемые слои видимыми по умолчанию перед добавлением данных на карту. Далее создайте Определяющий запрос для слоя, указывающий поднабор данных при помощи SQL. После того как вы ограничили данные, которые отобразятся на карте, сделайте слой видимым и подготовьте свою карту к публикации.
Внимание:
Не перетаскивайте на карту данные из раздела подключений к базам данных, если вы заранее не задали поднабор данных, или если для вашей карты не настроено автоматическое отображение данных после их добавления. Большие объемы данных, которые, как правило, хранятся в подобных хранилищах, будут прорисовываться на карте чрезвычайно долго.
Существуют два ограничения ArcGIS при использовании Netezza Data Warehouse Appliance:
- Если используется устаревший пространственный тип Netezza, имена пространственных столбцов в таблицах должны содержать текст shape или их псевдонимы должны содержать текст shape.
Устаревший пространственный тип использует тип данных Varchar; следовательно, имя shape столбца или его псевдоним указывает для ArcGIS, что в столбце хранятся пространственные данные, а не текстовые. Если у пространственного столбца в таблице другое имя, создайте представление таблицы и назначьте пространственному столбцу псевдоним shape.
- Для запроса данных об объектах в ArcGIS требуется, чтобы таблица содержала поле уникального идентификатора. ArcMap и ArcGIS Pro предложат указать это поле ID при добавлении пространственной таблицы на карту.
Инструменты ArcGIS не вставляют новые значения в поля уникальных идентификаторов базы данных; наоборот, они опираются на базу данных для вставки значений в поле. Поскольку Netezza не имеет типа данных или встроенного механизма заполнений значений в поле ID, инструменты ArcGIS, которые создают новые строки в таблице базы данных, не могут использоваться с Netezza. Также, из-за невозможности вставить объекты в таблицу Netezza из ArcGIS, отсутствует возможность публикации сервисов объектов, содержащих данные из Netezza Data Warehouse Appliance.
Другие ограничения связаны с самой Netezza.
- Поскольку пространственные пакеты Netezza используют разные типы данных, от того, какой пространственный пакет будет использоваться, будет зависеть порядок настройки Netezza ODBC для подключения к Netezza из клиентских приложений.
- Как пользователь Netezza, вы знаете, что в хранилищах Netezza Spatial хранятся простые данные. Следовательно, вам не удастся вставить в Netezzaсложные данные из базы геоданных или из другой базы данных.
- Как пользователь Netezza вы также знаете, что длина строк ограничена 65 535 байтами. Для вычисления размеров строк можно использовать следующую таблицу. Эта таблица показывает типы данных Netezza, создаваемых ArcGIS в Netezza, и величина дискового пространства, которое эти данные занимают:
Тип поля ArcGIS | Тип данных Netezza | Объем диска |
---|---|---|
DATE | timestamp | 8 байт |
DOUBLE | numeric(p,s) По умолчанию, p (точность) = 38 а s (масштаб) = 8. | Точность от 9 и ниже = 4 байта Точность от 10 до 18 = 8 байт Точность от 19 до 38 = 16 байт |
FLOAT | Если задана точность 6 или ниже, создаются данные numeric(p,s) Если задана точность от 7 до 15, создаются данные типа double. | numeric = 4 байта double = 8 байт |
GEOMETRY | Если вы используете устаревший Netezza Spatial Package, создается столбец переменной длины (до 64 000 знаков). Если вы используете Netezza Spatial Esri Package, создается столбец ST_Geometry. | Для устаревшего Netezza Spatial Package
Для Netezza Spatial Esri Package
Примечание:Если размер отдельной геометрии превышает размер поля, когда данные загружаются в класс объектов, загружается нулевая геометрия. Например, если вы скопируете класс полигональных объектов из другого источника данных и вставите его в базу данных Netezza, то будет создана таблица с полем геометрии (максимальный размер 64 000 байт). Затем записи вносятся в таблицу. Если какая-либо геометрия превышает размер 64000 байт, запись и все атрибуты вносятся, но в поле геометрии вносится ноль. |
GUID | Символы фиксированной длины (38) | 40 байт |
LONG INTEGER | Если масштаб больше 0, создаются числовые данные (p,s). Если масштаб равен 0, создается целочисленное значение. | integer = 4 байт числовое значение с точностью 9 или ниже = 4 байта числовое значение с точностью от 10 до 18 = 8 байт числовое значение с точностью от 19 до 38 = 16 байт |
OBJECTID | integer | 4 байта |
SHORT INTEGER | smallint | 2 байта |
TEXT | Переменная длина, Unicode(p) P – это длина, заданная для поля text. Значение, предлагаемое по умолчанию, равно 50. | p x 4 = используемое количество байт. |
См. какие версии Netezza Data Warehouse Appliance поддерживаются в ArcGIS 10.7.1.
Microsoft SQL Server
Несмотря на то что Microsoft позволяет учетным записям пользователей SQL Server записывать данные в схему под любым именем, для ArcGIS необходимо, чтобы пользовательские учетные записи, под которыми создаются таблицы, представления или другие объекты базы данных, имели одинаковые имена пользователей и имена схем. Например, нельзя подключиться из ArcGIS как elmer и вести запись в схему с названием dataowner.
Если вам необходима такая функциональность, как вложения, архивирование, топология, версии базы данных для одновременного редактирования или возможность репликации данных, можно включить в базу данных SQL Server базу геоданных .
Oracle
ArcGIS поддерживает пространственные типы Oracle SDO_Geometry и Esri ST_Geometry в базах данных Oracle. SDO_Geometry – это отдельный продукт сторонней разработки. Если для хранения пространственных данных вы желаете использовать Esri Esri ST_Geometry, скопируйте библиотеку геометрии ST_Geometry на свой компьютер c Oracle и запустите инструмент геообработки Создать пространственный тип, чтобы создать тип, подтипы и функции ST_Geometry.
Если вам необходима такая функциональность, как вложения, архивирование, топология, версии базы данных для одновременного редактирования или возможность репликации данных, можно в базу данных Oracle включить базу геоданных.
PostgreSQL
ArcGIS поддерживает пространственные типы PostGIS geometry и geography, а также пространственные типы Esri ST_Geometry в базах данных PostgreSQL. PostGIS – это отдельный продукт сторонней разработки. Если для хранения пространственных данных вы желаете использовать тип Esri ST_Geometry, скопируйте библиотеку st_geometry в установку PostgreSQL и запустите инструмент геообработки Создать пространственный тип, чтобы создать тип, подтипы, виды и функции ST_Geometry.
Несмотря на то, что PostgreSQL позволяет учетным записям пользователей записывать данные в схему под любым именем, для ArcGIS необходимо, чтобы пользовательские учетные записи, под которыми создаются таблицы, представления или другие объекты базы данных, имели одинаковые имена пользователей и имена схем. Например, нельзя подключиться из ArcGIS как vlad и вести запись в схему с названием public.
Если вам необходима такая функциональность, как вложения, архивирование, топология, версии базы данных для одновременного редактирования или возможность репликации данных, можете включить в свою базу данных PostgreSQL базу геоданных.
См. какие версии PostgreSQL и PostGIS поддерживаются в ArcGIS 10.7.1.
SAP HANA
При использовании SAP HANA необходимо принимать во внимание следующее:
- SAP HANA использует столбчатый формат хранения данных, который служит собственным индексом. Поэтому пространственные столбцы в таблицах SAP HANA не требуют пространственного индекса для запросов.
- Поскольку SAP HANA не использует пользовательские индексы, вы не будете обрабатывать и перестраивать индексы таблиц в SAP HANA.
- При загрузке данных в SAP HANA пространственная привязка, используемая данными, должна существовать в системной таблице SAP HANA.
- SAP HANA заменил свою систему пространственной привязки EPSG ID 4326 с представления WGS84 на плоскости на представление на сфере. Таблицы, хранящие пространственные данные в SAP HANA с системой пространственной привязки 4326, в ArcGIS могут повести себя неожиданно.
Представление WGS84 на сфере (EPSG ID: 4326) в SAP HANA содержит ключевые ограничения, делающие его неподходящим для работы с определенными типами данных. Например, глобальные наборы данных, выходящие за границы полушария, или линии, пересекающие границы полушария, приводят к противоречивым результатам. Данные, созданные или загруженные при помощи ArcGIS, продолжают храниться в версии системы координат WGS84 на плоскости (EPSG ID 1000004326), чтобы в ArcGIS можно было работать со всеми типами данных. Тем не менее ArcGIS может считывать данные WGS на сфере, которые созданы в SAP HANA, при помощи SQL или сторонних продуктов.
- SAP HANA хранит информацию о системе пространственной привязки в системном виде ST_SPATIAL_REFERENCE_SYSTEMS. Пространственные данные, загружаемые в SAP HANA, должны либо иметь пустую пространственную привязку, либо использовать пространственную привязку, существующую в системном виде ST_SPATIAL_REFERENCE_SYSTEMS. Если это представление не содержит пространственную привязку загружаемых данных, используйте выражение SAP HANA CREATE SPATIAL REFERENCE SYSTEM, чтобы обновить представление необходимой системой пространственной привязки.
Подсказка:
Подробную информацию можно найти на странице CREATE SPATIAL REFERENCE SYSTEM в документации SAP HANA Пространственная привязка.
Если у пространственных данных, которые вы импортируете или копируете в базу данных SAP HANA, нет определенной пространственной привязки, SAP HANA присвоит значение SRID по умолчанию 0, т.е. использует Декартову систему пространственной привязки, которая работает с данными на двумерной плоскости.
Teradata Data Warehouse Appliance
Чтобы подключиться из ArcGIS к Teradata Data Warehouse Appliance, необходимо установить клиент Teradata GSS, библиотеку ICU и драйвер ODBC на компьютере клиента ArcGIS в определенном порядке. Более подробно см. в разделе Подключение к Teradata.
Узнайте, какие версии Teradata Data Warehouse Appliance и клиентских библиотек поддерживаются в ArcGIS 10.7.1.
Ниже приведен перечень доступных руководств пользователя по использованию Teradata Data Warehouse Appliance в ArcGIS:
- Имена пространственных столбцов в таблицах должны называться shape или в представлении иметь псевдоним shape.
Базовое хранение для Teradata ST_Geometry это CLOB; поэтому, имя или псевдоним столбца (shape) – единственный способ для ArcGIS определить, что в столбце содержатся пространственные данные.
- Когда вы добавляете таблицы в Teradata из клиента ArcGIS, ArcGIS всегда создает таблицы в базе данных, которой владеет пользователь. ArcGIS не поддерживает создание таблиц в базе данных, которая пользователю не принадлежит. (У пользователя и базы данных должны быть одинаковые имена.) На таблицы, добавленные за пределами ArcGIS, это правило не распространяется, и пользователи, подключенные к Teradata в ArcGIS, могут просматривать и публиковать данные. Если вы публикуете редактируемый сервис объектов, пользователи смогут редактировать данные.
- Необходимо использовать функции замощения, предоставляемые Teradata для создания и поддерживания пространственного индекса в столбце ST_Geometry Teradata.
Teradata использует пространственный индекс замощения с заданной областью интереса. Поэтому индекс замощения не может использоваться пространственными операциями ArcGIS, основанными на динамичных входных данных, такими как масштабирование и перемещение. Однако индекс замощения может использоваться в слое запроса, если SQL-выражение для задания слоя запроса используется исключительно с индексом замощения для запроса поднабора данных, основанных на области интереса.
- Для запроса данных об объектах и публикации веб-сервисов ArcGIS требуется, чтобы таблица содержала поле уникального идентификатора. ArcMap предложит вам задать это поле уникального идентификатора при добавлении пространственной таблицы на карту.ArcMap и ArcGIS Pro предложат указать это поле ID при добавлении пространственной таблицы на карту.
Инструменты ArcGIS не вставляют новые значения в поля уникальных идентификаторов базы данных; наоборот, они опираются на базу данных для вставки значений в поле. Поскольку у Teradata нет типа данных или встроенного механизма для заполнения значений в поле ID, инструменты ArcGIS, которые создают новые строки в таблице базы данных, не могут использоваться с Teradata.
- Как пользователь Teradata вы знаете, что Teradata 14.x ST_Geometry поддерживает только двухмерные пространственные данные, поэтому вы не можете вставить пространственные данные, содержащие z- или m-координаты, в Teradata 14.x. Teradata 15.0 ST_Geometry поддерживает только z-координаты, но не m-координаты, поэтому вы не можете вставить пространственные данные, содержащие m-координаты, в Teradata 15.0.
- Как правило, в Teradata Data Warehouse Appliance хранится очень большой объем информации. Чтобы использовать клиент ArcGIS для визуализации, выполнения анализа или публикации данных, воспользуйтесь поднабором данных. Способ выполнения предопределяется тем, что вы будете делать с данными.
- Если вы добавляете данные в ArcMap или ArcGIS Pro для их просмотра и анализа на карте, добавьте слой запроса и задайте выражение слоя запроса, чтобы выбрать поднабор данных.
- Если вы добавляете данные в ArcMap для публикации картографического сервиса или ArcGIS Pro для публикации слоя изображений карты, которые ссылаются на зарегистрированные данные, задайте представление базы данных, содержащее только поднабор данных. Представления базы данных хранятся в базе данных. Можно воспользоваться инструментом геообработки Создать представление базы данных или клиентским приложением SQL, чтобы задать представление.
- Если вы добавляете данные в ArcMap для публикации сервиса объектов или публикации на портале, снимите отметку Делать вновь добавляемые слои видимыми по умолчаниюперед добавлением данных на карту. Далее откройте Свойства слоя и создайте Определяющий запрос, указывающий поднабор данных при помощи SQL. После того как вы ограничили данные, которые отобразятся на карте, сделайте слой видимым и подготовьте свою карту к публикации.
- Если вы добавляете данные в ArcGIS Pro для публикации векторного слоя, который ссылается на зарегистрированные данные, или для публикации на портале, снимите отметку Делать вновь добавляемые слои видимыми по умолчанию перед добавлением данных на карту. Далее создайте Определяющий запрос для слоя, указывающий поднабор данных при помощи SQL. После того как вы ограничили данные, которые отобразятся на карте, сделайте слой видимым и подготовьте свою карту к публикации.
Внимание:
Не перетаскивайте на карту данные из раздела подключений к базам данных, если вы заранее не задали поднабор данных, или если для вашей карты не настроено автоматическое отображение данных после их добавления. Большие объемы данных, которые, как правило, хранятся в подобных хранилищах, будут прорисовываться на карте чрезвычайно долго.
- Если вы используете ArcGIS для добавления класса объектов в базу данных Teradata, и пространственная привязка для класса объектов отсутствует в системной таблице Teradata, ArcGIS добавит запись в таблицу Teradata SPATIAL_REF_SYS и, соответственно, в таблицу GEOMETRY_COLUMNS.
Это позволяет использовать больше пространственных привязок, чем предлагается в Teradata по умолчанию. Однако обновления большинства версий Teradata приводит к сбросу и перепостроению этих таблиц со значениями по умолчанию.
Перед обновлением Teradata следует всегда создавать резервную копию базы данных. Убедитесь, что в нее включены записи этих таблиц, чтобы вы могли восстановить их, если понадобится, после обновления Teradata. Вы можете следовать этой процедуре архивации и восстановления записей SPATIAL_REF_SYS и GEOMETRY_COLUMNS во время обновления базы данных:
- Создайте резервную копию базы данных.
- Подключитесь к базе данных, в которой вы будете делать копии таблиц SPATIAL_REF_SYS и GEOMETRY_COLUMNS.
В этом примере база данных называется mybackupdb.
database mybackupdb;
- Создайте резервные копии таблиц.
В этом примере исходные таблицы находятся в базе данных sysspatial.
CREATE TABLE mybackupdb.spatial_ref_sys AS sysspatial.spatial_ref_sys WITH DATA; CREATE TABLE mybackupdb.geometry_columns AS sysspatial.geometry_columns WITH DATA;
- Обновите исходную базу данных Teradata.
- Подключитесь к базе данных, в которую вы скопировали таблицы.
- Восстановите таблицы в обновленную базу данных.
--Restore the geometry columns table. INSERT INTO sysspatial.geometry_columns SELECT * FROM mybackupdb.geometry_columns; --Restore the spatial_ref_sys table. INSERT INTO sysspatial.spatial_ref_sys SELECT * FROM mybackupdb.spatial_ref_sys MINUS SELECT * FROM sysspatial.spatial_ref_sys;
- После восстановления таблиц можно удалить архивные копии.
DROP TABLE mybackupdb.spatial_ref_sys; DROP TABLE mybackupdb.geometry_columns;
- Если необходимо, снова предоставьте права доступа к этим таблицам для пользователей, которые будут создавать данные в базе данных.
Облачные базы данных, как сервис
ArcGIS поддерживает следующие основанные на облачных базах данных сервисы:
- Microsoft Azure SQL Database
- Microsoft Azure Database for PostgreSQL
- Amazon Aurora PostgreSQL
- Amazon Relational Database Service (RDS) for PostgreSQL
- Amazon RDS for SQL Server
Всегда размещайте свои клиентские приложения ArcGIS в том же облаке и в том же месте (регионе), в котором находятся и ваши облачные базы данных.
Подсказка:
Esri предоставляет образы для Microsoft Azure и Amazon Web Services (AWS) с ArcGIS Enterprise и ArcGIS Pro. Дополнительные сведения см. в справке ArcGIS Enterprise на Microsoft Azure и ArcGIS Enterprise на AWS.