Spatial types in databases and spatial data warehouses

Spatial data types store the spatial attributes that allow you to visualize data on a map. Many databases automatically include spatial data types. Others require some configuration or an installation to use a spatial data type. The following sections list all the databases ArcGIS supports, what spatial data types are supported in each, and what, if any, configuration is needed to use a spatial data type in each database.

Amazon Redshift

ArcGIS supports the Redshift geometry type, which is present in Redshift by default.

Dameng

Dameng includes its own ST_Geometry spatial type; however, you must initialize it.

Google BigQuery

ArcGIS supports the BigQuery geography type, which is present in BigQuery by default.

IBM Db2

Db2 databases include their own ST_Geometry spatial type. No configuration is needed to use it.

Microsoft SQL Server

SQL Server, Azure SQL Database, and Amazon RDS for SQL Server include two spatial types: geometry and geography. You do not have to install or configure these spatial types, as they are present automatically.

Oracle

ArcGIS supports two spatial types in Oracle: ST_Geometry and SDO_Geometry.

Use the Create Spatial Type geoprocessing tool to install the ST_Geometry spatial type in your Oracle database. See Add the ST_Geometry type to an Oracle database for instructions.

If you will define queries that perform spatial functions on your layers, you also need to configure the Oracle extproc to use ST_Geometry.

Oracle Locator objects, including the SDO_Geometry type, are present by default in Oracle databases. Therefore, you can access the SDO_Geometry type without additional installations, but to access all SDO_Geometry functions, you may need to install Oracle Spatial in the database.

Oracle database-as-a-service offerings

ArcGIS supports only the SDO_Geometry data type in supported database-as-a-service options such as Amazon RDS for Oracle.

PostgreSQL

ArcGIS supports three spatial types in PostgreSQL: ST_Geometry, PostGIS geometry, and PostGIS geography. Install one or all of these types in your database.

To install the ST_Geometry type in PostgreSQL, place the st_geometry library in your PostgreSQL installation's lib directory. Next, use the Create Spatial Type geoprocessing tool to create the ST_Geometry type in the database. See Add the ST_Geometry type to a PostgreSQL database for instructions.

PostGIS is a third-party, open source installation. To use the PostGIS geometry or geography type, install PostGIS on the PostgreSQL database cluster. Once installed, either use the PostGIS template database to create a database containing the PostGIS types, or configure an existing database to use the PostGIS types. See PostGIS documentation for information on the installation and configuration of PostGIS.

PostgreSQL database-as-a-service offerings

ArcGIS supports only the PostGIS geometry type in supported database-as-a-service options such as Amazon Aurora (PostgreSQL-compatible edition), Amazon Relational Database Service (RDS) for PostgreSQL, and Microsoft Azure Database for PostgreSQL.

SAP HANA

The SAP HANA ST_Geometry type is used for spatial data storage in SAP HANA and SAP HANA Cloud. The ST_Geometry type is included by default.

Snowflake

ArcGIS supports the Snowflake geography type, which is present in Snowflake by default.

SQLite

To store spatial data in a SQLite database, you can either install SpatiaLite, add the ST_Geometry type to the database, or create a GeoPackage. See Spatially enable an SQLite database for more information and instructions.

Alternatively, you can use the Create SQLite Database geoprocessing tool to create a GeoPackage or SQLite database that uses ST_Geometry or SpatiaLite storage.

Teradata Vantage

Teradata Vantage includes a spatial data type; no configuration is needed to use it. Be aware, however, that ArcGIS requires that the spatial column be named shape. If the name of the column is not shape, create a view on the table and set the alias of the spatial column to shape.