Select to view content in your preferred language

Support dynamic tiling using a CDN such as AWS CloudFront for cached services

731
0
11-09-2022 05:10 AM
Status: Open
bspivey
Occasional Contributor

Currently, to create a cached service in the cloud in a high availability/auto-scaling environment, in our case AWS, requires that the cache either be stored on disks, SAN like devices (e.g., EBS volumes), or S3. This is less than ideal because:

  1. Supporting cache on demand does not leverage the advantages of storage S3 (lower costs, better redundancy, "infinite" storage),
  2. Storing in S3 requires that caches always be pre-built (less efficient workflow),
  3. Requires ongoing storage costs

It would be ideal if ArcGIS Enterprise, cloud formation templates, CloudBuilder supported the option to do cache on demand/dynamic tiling such that tiles would be directly stored in a CDN (e.g., CloudFront).  What I am proposing is similar to the AWS Lambda/TiTiler workflow.  Esri service request URL's would remain the same, but users would benefit from the performance boost of tiled services and the flexibility of them being dynamic. Providers would enjoy a cleaner and easier cache creation workflow (configure in the UI when creating the service), reduced costs (CDN vs storage and egress fees), and lesser overall storage administration. Rather than using ArcGIS, updating a cache would simply be a matter of invalidating the cache using the CDN tools (i.e., clicking a few buttons) and the cache would automatically rebuild as user requests are made. To go a bit further, users could have the option of selecting multiple projections so that caches could be created for each. Again, all done dynamically without requiring much effort from the data provider.