The following sections document best practices for using the cloud to store, manage, and access imagery for visualization and analysis. This includes a discussion of cloud storage options for imagery, recommended cloud-based image management workflows, and guidance for cloud deployments.
What is the cloud?
The cloud is a network of remote servers hosted on the internet that gives you the ability to store, manage, and process data instead of using your local servers or personal computers. Rather than implement and manage your own infrastructure on-premises, you essentially rent equipment in someone else's infrastructure and use it remotely.
Using the cloud is a relatively inexpensive solution when a high level of security and availability is needed. Clouds also provide elasticity, making them easily adaptable to an organization's dynamic requirements.
The storage costs associated with cloud usage can be higher than storing data on internal hard drives or some network-attached storage solutions.
How is the cloud different from on-premises architecture?
Implementation and management of cloud-based infrastructure is different from what you have on-premises in several important ways:
- Storage model—The storage model is different. In the cloud, you don't generally use a file system (they exist, but they do not scale well). Instead, object storage (accessed via HTTPS) is an inexpensive storage solution for large quantities of imagery.
- Elasticity and pay-for-use cost model—The cloud is elastic and scalable. You can scale up and scale down as required; you don't have to purchase the infrastructure, just rent it. You only pay for the storage and computing power you use.
- Security—Security in the cloud involves different considerations from public, local, or enterprise storage. Cloud storage is designed to be accessed anytime, anywhere, and supports a broader set of users and applications. Given this, there are many security models to protect your data and limit access.
- Test and scale—One way to take advantage of the cloud's elasticity is to test and scale. In an enterprise environment, for example, you often plan your infrastructure implementation, deciding and purchasing how many servers you need upfront. In the cloud, you start out small, test, and then increase capacity if you want to make it bigger (or decrease it to make it smaller).
It's important to remember that the cloud is not a viable solution for all organizations. It will improve some things and make others more complicated.
The cloud is generally appropriate for the following cases:
- You’re looking for an inexpensive way to store large collections of imagery.
- Your own infrastructure is getting expensive and hard to maintain.
Many organizations are transitioning to cloud-first policies, meaning they prefer to store and access data directly from the cloud instead of managing data on their own infrastructure.
Esri cloud deployments
The following four deployments are available for cloud-based workflows at Esri:
- Desktop—ArcGIS Pro can be run in the cloud by setting up virtual machines in the cloud. Alternatively, you can use ArcGIS Image Dedicated or ArcGIS for Microsoft Planetary Computer to set up virtual Pro machines in the same cloud and region as imagery data.
- Enterprise—ArcGIS Enterprise can be installed in Amazon Web Services (AWS), Microsoft Azure, Google Cloud, sovereign clouds, or private clouds. You can use ArcGIS Image Server to manage image services in your own infrastructure. This option is ideal for users wanting to store large amounts of their data in the cloud and prefer to manage their own infrastructure.
- Online—ArcGIS Onlineis a cloud-based SaaS offering that allows you to publish tiled and dynamic image layers on a cloud managed by Esri. It also allows you to upload tile cache into the cloud and serve it back as a basemap or elevation surface. With ArcGIS Image for ArcGIS Online, you can quickly store raster data that can be shared both internally and externally. You can then use the hosted imagery to run extensive analyses.
- Dedicated—ArcGIS Image Dedicated lets you directly serve imagery in your AWS or Azure cloud environment by managing dedicated servers in the same cloud and region as your cloud-based data. Virtual Pro machines can be set up as part of the Processing and Analysis subscription. This is an ideal option if you already store imagery data in your own AWS or Azure cloud, prefer to use ArcGIS Pro to author image services or perform analyses on large imagery collections, or share dynamic imagery layers publicly.
Esri supports AWS and Azure commercial cloud platforms with implementation tools to streamline a complete or partial cloud-based ArcGIS implementation. Alternatively, you can implement ArcGIS manually on other cloud platforms.
Components of a cloud-based imagery solution
There are several components of a complete imagery solution in the cloud. You can implement all of them in the cloud, or just parts. It's important to think about which aspects are relevant for your organization and which make sense to perform in the cloud, if any.
- Storage—How are you going to store the original imagery you received? The optimized imagery? You may store them in the same place or you may decide you want to store the original data locally and store the optimized data in the cloud.
- Management—If you have collections of imagery, you'll need to create mosaic datasets to manage them. Where are you going to author these mosaic datasets: locally or in the cloud? (It's best to author mosaic datasets wherever you're storing your imagery.)
- Sharing—What will end users (or applications) need to do with the imagery: visualization or analysis? Is it enough to serve tile cache, or will users need dynamic image services to do on-the-fly processing or perform analytics?
- Perform analytics—Will you want to analyze your data using ArcGIS Pro, use distributed cloud-based raster analytics, or have no need to set up any infrastructure?
- Access control—Are you accessing the final product through ArcGIS Online, your own ArcGIS Enterprise portal, a virtual Pro machine, or using dedicated imagery servers? Will the imagery be used internally, requiring secure access, or be available publicly?
Processing, including serving data or any analytics, should happen in the same infrastructure where the images are stored; otherwise, the large data transfer will be slow and could incur a high egress cost.