You are here:
ArcGIS Image Server
About the ArcGIS Image Server
The ArcGIS Image Server architecture contains several components, which are organized into three main parts:
- Image server—This acts as the request broker between the clients and the processing component that provides the data to the client.
- Service provider—This is the processing component that processes the components of the image service and distributes the data to the client.
- Image service—This is the image service definition and a collection of rasters to be served.
The ways in which these main parts are created and work together are defined and managed by an image server administrator. The administrator uses the Service Editor in ArcMap to create the image service and uses the Server Manager application to run the image server and manage the services and their service providers, as well as control the server configuration and access.
The diagram below outlines the Image Server architecture:
Image Server components
1. Raster data
An image service supports a number of raster datasets as raster types, such as QuickBird Basic, QuickBird Standard, Landsat ETM 1G, TIFF, DOQ, and USGS DEM. Generally, for every raster data type, there is associated metadata, either as a header or as part of an associated file. This metadata can contain basic information about the raster, such as its coordinate system, pixel size, number of rows and columns, and the number of bands, or more detailed information, such as the date of acquisition, cloud cover, and data provider's name. The raster data and any associated files should be stored together or in the same file folder structure as the data exists in when provided from a data vendor. For example, .tif files using the information in a world file should have the .tfw file stored in the same folder.
Raster data, for the Image Server, can be stored on a local disk, on a removable disk drive, or in a database—raster data can be stored anywhere, as long as it can be readily accessed by the Image Server. The speed of reading the data really affects the performance.
See the list of supported raster data file types
2. Image service definition
The image service definition file (.ISDef) contains all the information used to create the image service. It references the raster data that is going to be served; defines the properties of the service, such as the spatial reference and metadata; defines the image-processing steps that will be applied to the raster data; and defines information about the output image rendering, presentation, and properties, such as the mosaic order and which images will display at which resolutions.
The links to the raster data, from the image service definition, are contained in a raster process definition file (.RPDef), which contain specific information about each raster dataset used in the image service, such as the pixel size, spatial reference, and extent.
The image service definition is created and edited in ArcMap, with tools on the Image Service Editor toolbar. The image service definition appears in ArcMap as a custom layer containing one to four of the following layers: footprint, boundary, preview, and seamline:
- The footprint outlines the displayable extent of each raster dataset (and is used to define the extent of the raster data used to create the mosaicked image).
- The boundary outlines the extent of all the datasets as a whole.
- The preview is used to display the service once it is built.
- The seamline allows for advanced capabilities in defining boundaries and specific rules that will be applied when mosaicking the raster data. The seamline is created and used by the Seamline extension.
The image service definition exists as a folder containing the footprint shapefile, a service table that is part of the footprint shapefile, a boundary shapefile, the ImageService.ISDef, a subfolder with the raster process definitions, and a seamline shapefile (if it is created). These contents are compiled to create the image service file that is used by the service providers, with the extension .ISCDef.
Learn more about the image service and the definition file
3. Image service
An image service is defined by the service definition and the collection of raster data with the extension .ISCDef. It is this file that the service provider uses to generate the image service data that is sent to the clients.
4. Service provider
The service provider is the workhorse of the system, and multiple service providers can be running within the image server system. Service providers receive the requests from the client applications for an image service product, perform the processing outlined in an image service, and deliver the required data to the client.
The main functions of the service provider are to
- Maintain one or more image services.
- Publish itself to the specified image server.
- Communicate with the clients that require access to the imagery.
- Provide and process streams of image data in reply to client requests.
- Maintain a detailed log of all the imagery requests made.
Service providers can serve one or more image services—they usually contain a list of image services that a client can choose to receive. For example, you could have many image services on one service provider when you want to provide multiple products from one raster data source, such as Landsat. With Landsat, you could provide multiple image services of different band combinations, an NDVI image service, and if you have an elevation model you may want to generate derived products such as color-coded elevation models or shaded relief models, to be used in conjunction with the Landsat data. The same image service can be hosted by more than one service provider as well. You may need to do this when a particular image service is requested very often.
The image server scales to support heavier loads by using additional service providers. The service provider's architecture is multithreaded. Therefore, each request runs in its own thread, and a request can be for any one of the image services it's providing. Multiple service providers can run in parallel, and each service provider can work with multiple image services.
When a valid client connection for an image service is received, the service provider creates a connection that it maintains until the client disconnects or is timed out. Requests are made from the client to the service provider for imagery. The service provider processes the image service and returns the requested imagery to the client. Summary details about the connections are sent to the image server on disconnect or at periodic intervals.
Learn about managing service providers
5. Image server
The image server publishes the available image services, acts as an image service request broker, ensures that users have the rights to access image services, and provides load balancing between service providers. Client applications make their first contact through the image server, and the image server identifies the service provider with which the client will further communicate.
The main functions of the image server are
- To maintain a list of all the available image services
- To provide details of available image services to client applications
- To authenticate clients and provide access control to the image services
- To perform load balancing when an image service is available on multiple service providers
- To provide the client application with the appropriate connection details to connect to an allocated service provider
- To maintain a log of all the connections made
The image server is managed by the Server Manager application; see Managing the image servers
Image Server tools
The tools that are part of the Image Server application include the administration tools and client applications. The administration tools are used by people to build the image services and by people who will administer the image server—these include the Service Editor (through the Image Service Editor toolbar) in ArcMap and the stand-alone Server Manager application.
1. Service Editor
Image services are created and edited in ArcMap using the tools and functions on the Image Service Editor toolbar.
The Service Editor is used to
- Create a new image service and define its properties.
- Add or remove the raster data.
- Define any processing that is to be applied to all the data in the image service or to individual rasters.
- Build the image service.
- Review the image footprints and edit any seamlines.
- Preview the image service image.
- Validate the processes and data in the image service.
- Optimize the image service by creating derived tiles and overviews.
- Generate the compiled image service files (.ISCDef) used by the service providers.
To learn more, see Working with the Image Service Editor
and Creating a new image service
2. Server Manager application
An administrator uses the Server Manager application to manage the image server, the service providers connected to the image server, and the image services published by each service provider. There are tools in this application that allow an administrator to
Learn more about working with the Image Server Manager
- Configure the image server and service providers.
- View the status and start and stop the image servers, service providers, and image services.
- Synchronize a modified image service on a service provider.
- Export or review log files.
- Manage security.
3. Client applications
Image Server supports the following applications:
- ArcGIS (9.1 and 9.2) applications: ArcMap, ArcGlobe, ArcIMS, and ArcGIS Server
- Image Server Viewer, a free viewer that is delivered as part of ESRI Image Server
By installing some additional free software, you can access the published image services from the image server directly from your desktop applications. In ArcMap, for example, there is a tool that is added to the user interface through the Customize dialog box, which allows ArcMap to access the image services as a client. These client applications allow you to directly change some of the image properties, such as the spatial reference, compression, and mosaic method of the image data you receive. They also allow you to view associated metadata and to export the image data to a file.