Transcript
00:01OK, so welcome back, and I see many of the same faces here, so I'm going to pick up where we left off in the last talk…
00:05…which was to introduce the architecture of the GIS server and how it works within an organization…
00:11…to go specifically then to a GIS service.
00:13What is it? [To] present this I'll talk about the server scenario very briefly again and then talk about the workflow…
00:21…and actually demonstrate how to make a GIS service and then some other examples of using them.
00:27So recall this slide before, then, where we've got our architecture now for internal users using ArcGIS [for] Server.
00:34The desktop users, desktop professionals, as well as those right from the decision makers down to the customer service representatives...
00:42…for example, in some organizations, all of them having access to mapping information, to maps, and to the ability…
00:49…to do editing and so on. That's internally and then beyond as well to public and other interested users and also…
00:58…extending the reach to your other divisions or regional offices, all through our GIS server.
01:06I just threw another little cloud there just to kind of symbolize the idea that you know, the GIS server is producing services…
01:13…and it's making use of web technology, HTTP. You've certainly seen that for many years now; what does it mean?
01:21What's its significance? It's really kind of the little channel that allows you to extend beyond the walls of your building in a…
01:31…with confidence that you're still protecting your internal network. This is the reason why web services are so great…
01:38…is that, you know… Can you reach your GIS data from outside your building? Normally not. It's a local area network thing.
01:46It involves communication on a number of different channels in your network, and to protect all those channels safely has always…
01:55…never been considered to be fully possible, and so there's always…
01:59It's rare that you would see anyone's local area network opened up beyond the building walls.
02:04However, HTTP is good, because it provides this little channel which can be monitored…
02:08…which can be, you know, a very narrow channel in which communication can occur outside the wall.
02:17[I] mentioned this workflow again and that we authored a number of different resources…
02:21…these are maps, analytical models, globes.
02:25We can create those, create the contents of our geodatabase, and all of these things can then be published.
02:31The actual act of publishing is as simple as going to the desktop software and choosing a menu item here called Publish to ArcGIS Server.
02:40I'll show you that in a moment. It follows with a dialog which just has a couple more choices to make and then it's done.
02:47What happens, though, is that it creates these services and there's a corresponding service for each of those resources below…
02:53…geodata service for the geodatabase, a map service for our map, an image service from our imagery, a geoprocessing service…
03:03…or an analysis service from our models.
03:07And as I said before, it could be used for a variety of clients.
03:14Let's just show you what I mean by that. I'm going to bring up ArcGIS [for] Desktop. Oops. Not even the right application.
03:23I should have brought this up before. Let's just close that.
03:35ArcMap is what I wanted. And I'm going to load into it a map.
03:50Come on, ArcMap. Here we go. Yeah, I've got some data from my own local area in New York, quite some comprehensive data.
03:58It's actually…this data is provided freely from the City of New York…many layers, and actually our office…
04:04…is just down here in the tip of Manhattan. So it helps produce a nice map, I'm happy with this, but I'd like to share it out with others…
04:12…and in order to do that I need to publish it. I can go into ArcGIS [for] Desktop into the Catalog interface here…
04:20…I can find this map document that I've created here…it's got a long name to it…right-click on it, and here's…
04:27…that menu item published to ArcGIS [for] Server.
04:34It brings up a dialog, and I can mostly accept all the defaults here; I will just change the name to something simpler.
04:40It's going to publish to my own server, I'm just publishing it to my local server running on this same machine here…
04:45…it's just a laptop, but I could be publishing it; I could be making an administrative connection to some other server…
04:51…some other machine in my organization to do this. All right? So I'll publish it by that name on this server.
04:58Oh! It already exists. OK, let's give it a different name.
05:04The next panel is a choice of capabilities. Now, mapping is at the top and I actually can't turn that off.
05:11But that's a good thing, that's my whole point here, is to create a map service. Some additional capabilities though…
05:16…are feature access. If I was interested in creating an application where I could edit that data, feature access…
05:24…would be a capability I'd need to turn on.
05:26Mobile data access. So these are additional capabilities that I can provide from this same map service, right?
05:33I'm going to accept the defaults again and click Next. It gives me a little summary, and I click Finish, and it publishes.
05:43It pops up with my administrative connection to the server here, and if I scroll down a bit I can see that there's my…
05:50…one I had created earlier and this new one here, NYC Basemap 2, as well as some other services that I've organized into folders.
05:59The folders are handy, not just for organizational purposes and collecting things nicely together, but I can actually…
06:05…set different access permissions on the services in a particular folder.
06:10So the top one there could have completely different access permissions than the one in the Portland folder here.
06:17Okay. So that's just the simple workflow of publishing a resource to make a service.
06:26We'll come back to the demo in a moment, but let me just tell you what I did under the hood here.
06:34If we were to look at the GIS server, we're really talking about two main components, right?
06:41When you install ArcGIS [for] Server, you're setting up a web server and a GIS server.
06:47Now, web server can be any of the commercial web servers that are used.
06:50You have Microsoft operating system, it's the IIS web server, you could use other free ones…
06:56…like Apache. There's other ones, IBM's WebSphere, there's BEA WebLogic, there's all sorts of…
07:02…commercial web servers out there that are perfectly compatible with this system. But it does involve a web server.
07:11The other part is really the GIS part, the GIS server, and it's made up of a number of components as well…
07:16…which I won't go into the details of. But just, you know, there are some components that you'll learn about.
07:21When I published that map, what I did was I instantiated a server object.
07:27Now, that's some pretty fancy terminology, so I don't need really to go into any more detail about it.
07:32But I…essentially I created something running in the server that has the name NYC Basemap 2. All right?
07:41So it exists; this does the maps. Ultimately that's the part that's going to make a map when I zoom to upper Manhattan or over to Brooklyn.
07:49That thing's going to go to work and fetch the data, render it in such a way according to the symbology that I set in my map…
07:57…and deliver to whoever is requesting it, a map of Brooklyn or Bronx or whatever.
08:02That's the part that does the work. However, how to access it comes up above, by what we call GIS server web service endpoints.
08:13So the active publishing, when I just did that right-click and went through that dialog, created the server object, and it also…
08:19…enabled an access to it through an HTTP URL.
08:26And the format of that URL, actually there are several of them. They're in these open standards of communication…
08:33…very commonly used standards in the web world. You don't again really need to know the details of this…
08:38…but there's something called SOAP protocol, there's REST, which I guess you could also say is a protocol…
08:43…and there are other standards like…as defined by the Open Geospatial Consortium.
08:48You may have heard of WMS and WCS and so on.
08:51All of these protocols, by which you can access that service, are provided by the act of publishing.
09:01And by default, the SOAP and the REST are provided. Now, if I were using my ArcGIS [for] Desktop…let's just carry this a bit further.
09:08Oh, just to mention, there are some other things I can load into my web server, and if you've heard of tiled map services or caching…
09:14…that can be hosted on the web server as well, as well as my web applications, you know…
09:18…these actual functional applications that my end users are using, [of] course that's…those sit on a web server…
09:23…they can sit in the same one.
09:26I guess the key to understanding here [is] that there are web applications and web services…
09:30…that this web server component is taking care of.
09:33And as I said, then, any number of applications can connect to this. If I were using the desktop software…
09:38…under the hood it's actually connecting to that SOAP endpoint. If I'm using JavaScript or Silverlight or Flex, under the hood…
09:45…it's connecting to a REST endpoint.
09:49Now, the REST has really opened up the capabilities for our web application development.
09:56It's really simplified the whole process of creating focused applications. REST is our friend.
10:04And so let me take a closer look at what I mean by that. Again, I'll bring up my browser, and let's just go to a page here…
10:17…a web page that is coming from my server. And it's a standard page. I could look at the same kind of page from ArcGIS Online.
10:27I'd see a lot more services listed there, but the same look and feel and the same links are in the ArcGIS Online…
10:33…or anybody else's ArcGIS [for] Server instance. They look the same. And these…in most cases, the public…
10:43…you can go to these sites as well. It's probably not much use to the public, but as a developer…
10:47…this is very important information that I can get from here.
10:50I see my two services; there's the one I just created. I can click on it, and then drill in it to get a little bit more information about it.
10:59Did I click on it? Let's try that again.
11:07I was expecting that to come up a little faster…it's usually very immediate…but there's usually…
11:14We've been having some problems with the network connections in here. All right, well, let's try something else, then.
11:28All right. Well, that's not behaving very nicely right now. I assure you that it normally works. But what I could do then…
11:33…if I clicked on that link, it would give me information about the individual layers of my map service…
11:40…and a lot of other metadata-type information about it.
11:43The fact that it's presented in this hyperlink is kind of reflective of the whole idea of REST…
11:48…in that everything that we use with REST… Here we go, finally. It's showing some layers.
11:54Is that…there are a whole bunch of other links here as well. …means that I can access information through hyperlinks…
11:59… through URLs, HTTP something something something. All right?
12:06Pretty well all the information; not only information about the layers but also the operations that I'd like to perform…
12:11…on this map service. I'm going to scroll right down to the bottom here. There's something called Operations, Export Map…
12:20…Identify, Find, Generate KML. These are operations that are also supported by REST.
12:26And Export Map would be a common one that's used then to draw a map.
12:31The point is that my request to draw a map is in the form of a URL. My request to query a map, like Identify or Find…
12:40…is also in the form of a URL. This is what makes it very easy for your web programmers to build applications.
12:48I'm going to back up to the previous page that I showed you here, and I'm going to bring up…No, sorry, let's go back to that one.
12:58I'm going to click on another link here that just gives me a quick view of the…of a very simple web application showing my service.
13:08All right, so there was my New York City map, and it's now showing in a browser as a web page. It's a very simple application.
13:16If I right-click on it…this is the nice thing about JavaScript, is that I can see the code, and much of this code is actually superfluous.
13:25I've probably got about maybe three dozen, four dozen lines of code here, and really the substantial part of it that's important…
13:33…is only about maybe 12 or 20 lines here, so again, it doesn't take very long to learn how to make an application…
13:41…that's showing your maps. All right, so…
13:47Oh, let me go back to this one second, let me go right to the viewing of the code source for this.
13:56You notice there are some URLs in this code, HTTP something. There are some other ones up here.
14:04A lot of use of other resources through URLs. What's the one I really wanted to look at…Oh, this is a really important one here.
14:13Let me see if I can just zoom in a bit on this. Where's my plus sign?
14:23I'm creating a layer in my map. It's using some code from the API. That's a bit too technical, perhaps, but…
14:31…here's the interesting part. What am I feeding this object that I'm creating? I'm feeding it a URL to this map service.
14:42You will find that if I wanted to query a layer, I could construct the object that does the query, again just by pointing it to a service.
14:50If I wanted to…what else do I want to do? If I wanted to do geocoding, if I wanted to be able to…
14:57…give my user a box to type in their address and have the service resolve that address into a location on the map…
15:03…I would point it to an object that has a URL as its argument, as its input value. It makes it very convenient and easy to program.
15:18How are we doing on time? About time? OK.
15:22So I hope that gives you an idea of how GIS services are made and how they're used, in a little, slightly more technical manner…
15:29…than we showed before. Again, I invite some questions for just maybe two or three minutes here.
15:34Sure, go ahead, sir. Yeah, right, right in front.
15:37[Audience question] The workflow is really nice. Is the Flex API, is the workflow the same or?
15:43Yeah, the question is, Is the Flex API a similar workflow? Absolutely. The great thing about this REST endpoint is that…
15:49…it's the same service that would be used by a Flex application or a Silverlight application. And the same basic structure…
15:56…of how to get to these resources is through these URLs. REST defines how the service is accessed.
16:04Those different APIs allow for the simple programming of access to them, and it's the APIs that take care of…
16:15…writing this kind of request to the server to get the map or to query the map.
16:22Ultimately underlying though are very similar object models, same functionality from API to API.
16:28Good question. Any other questions? Yes, go ahead.
16:33[Audience question] Do I have to have an enterprise server to do this…
16:37Do I need to have an enterprise license of ArcGIS [for] Server to do this? No. Mapping is enabled with the standard license…
16:44…I believe even with the ArcGIS 10.1…I shouldn't speculate, I know it, I've heard it.
16:49Even with the basic license in the upcoming release, it's going to have some simplified mapping capability with it…
16:54…but for now, ArcGIS 10, you need the standard or the advanced license, but mapping is possible with standard license, yeah.
17:05OK, well, thank you very much for your attention, and enjoy the rest of the conference...
17:09…and I'm standing by if you do have any other questions.
17:14[Inaudible]
17:15OK, and just one last note (thank you), we'd really appreciate your feedback on this session…
17:19…as all of them, and the URL for that is www.esri.com/sessionevals, that's e-v-a-l-s is the last part of that. Thank you very much.
What is a GIS Service?
Paul Trevillion gives an overview of GIS services, how to create them, and how to use them.
- Recorded: Jul 13th, 2011
- Runtime: 17:36
- Views: 21675
- Published: Sep 2nd, 2011
- Night Mode (Off)Automatically dim the web site while the video is playing. A few seconds after you start watching the video and stop moving your mouse, your screen will dim. You can auto save this option if you login.
- HTML5 Video (Off) Play videos using HTML5 Video instead of flash. A modern web browser is required to view videos using HTML5.
Right-click on these links to download and save this video.
- 480x270:WebM (30.8 MB)MP4 (14.9 MB)
- 960x540:WebM (84.6 MB)MP4 (32.4 MB)
If you don't have an Esri Global Login ID, please register here.