The definition of SaaS suggests that all components of a computing system are provided and managed by the cloud service provider, freeing the client to focus only on utilizing or consuming the resources. ArcGIS Online is an example of this level of service. As you observed in Lesson 2, ArcGIS Online can be used as a canvas for creating web map mashups, combining services from multiple sources. You'll do some more of this in this lesson. But you'll also go a bit further and see how ArcGIS Online can be used as a hosting site for your own web services and applications.
Hosting services on ArcGIS Online
ArcGIS Online can host web services in very much the way that ArcGIS Server can host web services. This means that you can make a map in ArcMap, choose File > Share As > Service like you have always done, and choose to host the service using ArcGIS Online servers instead of your own ArcGIS Server. In fact, there are other entry points into publishing a service that don't require ArcMap, such as uploading a CSV file or a shapefile and publishing it.
Because Esri is marketing ArcGIS Online to individuals and groups who may not be familiar with ArcGIS Server or GIS technical parlance, they don't use the term web services in the ArcGIS Online documentation; instead, they use the term "hosted web layers". Nevertheless, these hosted web layers use the same Esri GeoServices specification that is used by ArcGIS Server services. Therefore, code you write to interact with these services looks very similar to code you would write for ArcGIS Server.
Hosting web layers in ArcGIS Online costs money. You buy a block of "credits" from Esri, and these credits are consumed as you consume various resources in ArcGIS Online, such as uploading data and hosting services. The Service Credits Overview page shows the cost in credits for various actions.
The types of web layers that ArcGIS Online can host are limited compared with ArcGIS Server. Originally, ArcGIS Online could only host (rasterized) tiled map services and feature services. Recently, layers for supporting 3D views have been added (scene layers and elevation layers). Vector tile layers are also new and can only be published through ArcGIS Pro.
There are several workflows you can take to prepare hosted layers, depending how much GIS software you have installed onsite. A good example is with rasterized tiles. You can optionally build the cache tiles using ArcGIS Online (which costs credits) or you can build them yourself in ArcGIS Desktop and upload them as a "tile package" to ArcGIS Online where they can reside as a hosted layer (which saves credits but takes more work). See the article "Workflows for building and hosting cached map tiles in ArcGIS" for a comparison of options for building rasterized tile layers in ArcGIS Online.
Field data collection workflows
Esri has developed a number of apps for getting data into ArcGIS Online and viewing it once it is there. One of the most widely used is Collector for ArcGIS, which is used for data collection in the field, sometimes in disconnected environments. You install Collector on smartphones or tablets from the device's app store. When you open up Collector, you connect to a web map that you've saved on ArcGIS Online. You can then download base map data to your device so that you maintain geographic context if or when you become disconnected from the Internet while gathering data.
When you go out into the field, Collector uses your device's GPS to place you on the map. You can then take data points at any location and optionally supply attributes and/or attach a photo from the device's camera. When you return to a connected environment, you can "sync" the device's data into your ArcGIS Online service, where it is then available to other client applications.
Other apps such as the Esri Operations Dashboard are used for visualizing data from ArcGIS Online, whether it was put there by Collector or other means. This video series from the Esri Federal User Conference shows how Collector, ArcGIS Online, and the Operations Dashboard can work together in real time. Although this demonstration was conducted several years ago early in Collector's history, it does a nice job of showing the fundamental purpose of the app and how it can be used for data acquisition in the field.
- Operation Gold: The Operations Dashboard and Collector App for ArcGIS
- Operation Gold 2: The Operations Dashboard and Collector App for ArcGIS
As you will see on You Tube's "Up Next" list, there are a number of follow-up videos in this Operation Gold series that you can continue watching to see how the data is used further down the line after it is collected.
A platform as a service
When you were viewing the credit cost page, perhaps you noticed that ArcGIS Online offers geocoding and place finding services (which are free up to a point), as well as things like routing and network analysis services. Along with the ability to create mashups from third-party services, these capabilities may conceptually shift ArcGIS Online out of the SaaS category and toward the PaaS category, as the data component becomes more managed and handled by the client. This is perhaps a purely philosophical conversation rather than a practical one, but given the breadth of functionality provided by ArcGIS Online, its users may consider it to fall within SaaS or PaaS depending on the specific manner in which the site is used.
Running it on premises
Esri has recently productized a version of ArcGIS Online that can be run on premises, named Portal for ArcGIS. This is aimed at organizations that are disconnected from the Internet (such as the intelligence community), organizations that need a higher SLA (uptime percentage) than ArcGIS Online can offer, or organizations that simply do not feel comfortable moving to the cloud yet.
Portal for ArcGIS looks and feels the same as ArcGIS Online, but uses ArcGIS Server on the back end for hosting any services published by portal users. The administrator of Portal for ArcGIS is responsible for making sure the portal and server have enough hardware to accommodate requests and uploads by portal users. You will learn more about Portal for ArcGIS in Lesson 9.
Exploring the ArcGIS.com website
The ArcGIS.com website provides a view into ArcGIS Online. Sometimes you might hear the terms ArcGIS.com and ArcGIS Online used interchangeably, but ArcGIS Online can be accessed through other Esri clients such as ArcMap and programmatically through any client using the ArcGIS REST API.
Take a tour of the ArcGIS.com website using the steps below.
- Open your Web browser to the following URL: arcgis.com and log in using the Penn State Enterprise account you used in Lesson 2. ArcGIS Online is a cloud-based resource for viewing existing maps, creating new map products, and sharing maps with others. In ArcGIS Online, data services are presented in their map form, and the process of creating new maps and editing features is performed in a map interface.
The tabs across the top of the ArcGIS Online home page correspond to the site's primary capabilities:
- Gallery - view existing maps
- Map - create new map products
- Scene - create new 3D map products
- Groups - share your maps with particular users or the public (shown when logged in)
- Content - manage map content that you have created (shown when logged in)
- Organization - manage users and other settings for the Organization to which your account belongs (shown when logged in)
- Browse some maps by clicking Content and clicking the Living Atlas tab. Choose one of the categories on the left, and click through some of the map thumbnails listed on the Gallery page. There are two kinds of things you can open here: maps, and apps. These represent products created by ArcGIS Online users and published for public access. Think of a web map as your working canvas for assembling a bunch of web services into a presentable view that can then be pulled into many different APIs or platforms. A web mapping application, in contrast, is a final view that is created with a single API and is hosted for consumption by end users only. We're going to focus on web maps right now, but in the next section of the lesson, you'll get a chance to make both a web map and a finished web mapping application.
If you hover your mouse over a thumbnail, you will see a summary of the map and two links below the graphic, Open and Details.
The Details link shows information about the item.
- Choose a web map (try searching for Hurricanes and Tropical Cyclones), and open the Details page. Please note the Layers section toward the bottom of the page. This section lists the source of each data layer included in the published map. You should observe that each layer specifies a URL, which corresponds to the internet map server from which this particular data service is published. The URL should indicate the host (e.g., services.arcgisonline.com) and type (ArcGIS Server, WMS) of the service.
- Now, click the Open (or Open in Map Viewer) link on the web map, and open it in the ArcGIS.com map viewer. Use the tabs on the left hand menu to explore the layer list and legend.
Think about how the physical location of the source data, the manner in which you are using it, and extent to which all of this is transparent to you fits the SaaS model of cloud computing. Have the underlying technical details of how and where the data are published been adequately hidden from you? You've seen that you can discover some of that information, via the services directory, but it isn't always necessary to know it, when using the client provided by ArcGIS Online.
This site is an example of a SaaS resource because all components of the infrastructure are managed by the cloud, from the underlying hardware and operating system, to the software and data. In fact, user-created maps in the ArcGIS Online Gallery are primarily generated by compiling and overlaying existing map layers already published to ArcGIS Online or other mapping servers. It is possible to create new data in this environment by drawing features as graphics (Add > Add Map Notes). But this is the extent to which data can be directly managed; the ArcGIS Online cloud manages the underlying data storage details.