Data and Layers and Services, Oh My!

354
0
2 weeks ago
TravisOrmsby
Esri Contributor
6 0 354

In ArcGIS Pro, when you choose to share a layer to your ArcGIS Enterprise portal, you are presented with several options:

sharingoptions.png

What happens when you choose each option? To answer that question, it is a good idea to understand the difference between data, layers, and services:

  • Data is a collection of related facts arranged in a particular format. A raster file is data. A feature class is data.
  • A layer is a representation of data. The symbology, filters, and popup configurations are all part of the layer. Maps do not have data. They have layers that create a particular representation of data. In ArcGIS Enterprise, layers are content items in your portal.
  • A service makes data available to client applications. In ArcGIS, this is done by accessing a special URL, called a REST endpoint. Services have rules for how data can be accessed, the data format that will be provided, and what client applications are allowed to do with that data. Services might be hosted, which means they use a different underlying technology than services that are not hosted.

When you open a web map in your browser, the browser sends a request to the service. The service accesses the data and sends it to your browser in the appropriate format. The layer configuration determines how that data will be displayed in the map.

Reference registered data

When sharing, the first choice you need to make is how the service should access the data. One option is to use a data store that you manage and give the service permission to access that data store. The most common reason to do this is because you want the service to use the authoritative data in your enterprise geodatabase. There are two sharing options in ArcGIS Pro that reference registered data.

Map Image

This option creates a Map Image layer. The service will be accessible to client applications through a MapServer REST endpoint that looks like:

https://example.com/server/rest/services/ServiceName/MapServer

When you make a request to a MapServer URL, the service responds with an image drawn from the data in your user-managed data store to your client application. The way the image is drawn depends on the configuration of the Map Image layer.

When choosing to publish a Map Image layer by referencing registered data, you have the option to select Feature. If you do, you get a Feature layer item in addition to the Map Image layer. That Feature layer is made possible by a FeatureServer REST endpoint that looks like:

https://example.com/server/rest/services/ServiceName/FeatureServer

When you make a request to a FeatureServer URL, the service responds to your client application with the data from your user-managed data store, and your client draws an image of that data using the configuration of the Feature layer.

While the MapServer URL can handle both vector and raster data, the FeatureServer URL can only work with vector data.

Vector Tile

This option creates a Tile layer (hosted). You also get a hosted VectorTileServer REST endpoint that looks like:

 https://example.com/server/rest/services/Hosted/ServiceName/VectorTileServer

At the time of sharing, the service creates vector tiles of the data at many scales and caches those tiles. When you send a request to a VectorTileServer URL, it responds by returning the cached tiles. Because the service does not need to draw anything, that makes responses to these requests very fast. As the name implies, a VectorTileServer service is only able to handle vector data.

This option also creates a Map Image layer, Feature layer, MapServer URL, and FeatureServer URL, just as if you had created them directly by choosing the Map Image option. These other items allow you to update the cached vector tiles if the underlying data changes.

Copy all data

If you do not reference registered data, you must choose to copy the data into a location managed by ArcGIS. Some use cases require ArcGIS-managed data. In some cases, it can also be more convenient to release the responsibility of data management. When you copy all data, is important to note that if you delete the layer, the copy of the data is also deleted.

There are four sharing options that copy all data. Some of these options also create a Service Definition item in your portal content that can be safely deleted.

Feature

This option copies data into the ArcGIS-managed relational data store. You will get a Feature layer (hosted). You will also get a hosted FeatureServer REST endpoint that looks like: 

https://example.com/server/rest/services/Hosted/ServiceName/FeatureServer

Just like a non-hosted FeatureServer, requests to this URL will return the data, and your client application will draw an image of the data.

Tile

This option copies the data to an ArcGIS-managed geodatabase on your ArcGIS Enterprise hosting server’s file system. It creates a Tile layer (hosted). You will also get a hosted MapServer REST endpoint that looks like:

https://example.com/server/rest/services/Hosted/ServiceName/MapServer

Like VectorTileServer, the service creates cached tiles of the data and responds to requests by sending back the cached tiles, so responses are fast. Unlike VectorTileServer, these tiles are rasterized, so this MapServer service can handle both vector and raster data.

Map Image

This option copies the data to an ArcGIS-managed geodatabase on a federated ArcGIS Server site of your choice. Like sharing a Map Image by referencing registered data, it creates a non-hosted Map Image layer and a non-hosted MapServer REST endpoint.

Vector Tile

By default, this choice has the Feature option selected. This copies the data to the ArcGIS-managed relational data store. It creates a Tile layer (hosted), a Feature layer (hosted), and hosted VectorTileServer and hosted FeatureServer REST endpoints. The vector tiles can be updated from changes made to the Feature layer.

You can also uncheck the Feature option. In that case, ArcGIS Pro creates a vector tile package. That package is uploaded to your portal’s Content directory. You will get a Tile layer (hosted) and a hosted VectorTileServer REST endpoint.

Conclusion

Some capabilities of ArcGIS rely on the existence of certain types of data, certain types of layers, or certain types of services. The table below summarizes what is created when you choose each sharing option in ArcGIS Pro.

Reference registered data

Option

Data

REST endpoints created

Items created

Map Image alone

remains in user-managed location

  • MapServer
  • Map Image layer

Map Image with Feature selected

remains in user-managed location

  • MapServer
  • FeatureServer
  • Map Image layer
  • Feature layer

Vector Tile

remains in user-managed location

  • MapServer
  • FeatureServer
  • VectorTileServer (hosted)
  • Map Image layer
  • Feature layer
  • Tile layer (hosted)

 

Copy all data

Option

Data

REST endpoints created

Items created

Feature

Copied to relational data store

  • FeatureServer (hosted)
  • Feature layer (hosted)
  • Service Definition

Tile

Copied to hosting server directory

  • MapServer (hosted)
  • Tile layer (hosted)
  • Service Definition

Map Image

Copied to selected server directory

  • MapServer
  • Map Image layer

Vector Tile with Feature selected

Copied to relational data store

  • FeatureServer (hosted)
  • VectorTileServer (hosted)
  • Feature layer (hosted)
  • Tile layer (hosted)

Vector Tile alone

Copied to portal Content directory

  • VectorTileServer (hosted)
  • Tile layer (hosted)
  • Vector Tile Package

 

Additional Resources

For further ArcGIS Enterprise training, check out these Esri courses: