在上一篇,讲了帐户、组织和组,还有用户,在这篇就会讲到如何将本地数据或服务搬到Online上。

第一种方式:ArcGIS Online托管服务

    什么是ArcGIS Online托管服务?ArcGIS Online托管服务是你将你的GIS地图数据交给ArcGIS Online,它来帮你维护这个服务。当服务的请求量增加的时候,会自动在配额以内帮你调整服务,这样你不必购买任何服务器软件,也不需要请人来调整服务,并且可以实现对用户需求的一个弹性调整和快速响应。目前的托管服务只有两个类型,缓存服务和要素服务,相信在以后,地理处理服务等也都会成为托管服务的一份子。

    另外托管服务是组织帐户才有的能力,个人帐户不具备将数据托管到ArcGIS Online上的能力。

    如何将GIS地图托管到ArcGIS Online上呢?

1)在ArcMap中,登陆ArcGIS Online,使用的帐户是Moofell4,30天的组织帐户。

2)找到要托管的地图,“共享”->"服务",出现下图的内容,选择这个代表要将数据托管到这个帐户的组织里:

 

arcgis 连接数据python代码 arcgis连接online_server

3)选择属性。在服务能力里只会看到缓存服务和要素服务两个选项。并且缓存服务默认的是20级,当然你可以进行级数的调整。在10.1里,会智能地帮你估算每级切片的大概大小。

4)点击发布。在发布的过程中,我们可以看到有步将资源全部传到ArcGIS Online的过程。

5)在托管完毕之后,如果选择了缓存服务。这个时候会在ArcGIS Online上根据你自己设置的比例来进行切片。同时,我们也可以在Catalog里,查看现在缓存的状态,如下图:

 

arcgis 连接数据python代码 arcgis连接online_工具_02

 

6)在切片完成之后,我们回到Moofell4 的ArcGIS Online上,在“我的内容”里会看到以下的内容,再次证实了托管的意义:

  

arcgis 连接数据python代码 arcgis连接online_server_03

7)查看配额。“我的组织”->"查看状态"。可以看到切片的大小,所使用的配额等信息,如下图:

arcgis 连接数据python代码 arcgis连接online_office_04

8)最后查看下本地的ArcGIS Server,发现并没有Exercise3HostMoofell4这个服务,再次证实托管的意义。

 

 第二种方式:非托管方式发布服务

    就是在按一般服务发布的方式,在点击“发布‘之前,看下共享标签页,登陆ArcGIS Online,选择你要共享的范围。如下图:

    

arcgis 连接数据python代码 arcgis连接online_服务器软件_05

    在这个操作完成后,会产生什么样的结果呢?

   (1) 在本地的ArcGIS Server会看到该服务。

    (2) 用和上面的操作中相同的账户登陆ArcGIS Onilne,根据共享的方案,就可以在相应的地方找到该服务。如下图中的第一个GP服务和第4个服务,中间的两个是托管服务。

arcgis 连接数据python代码 arcgis连接online_arcgis 连接数据python代码_06

   (3 )接着我们做个试验。我们将本地的服务删掉,看下这个列表会发生什么变化。结果是没有任何变化。接着打开该服务,却告知不能加载。然后我在ArcMap里发布了同名的一个服务到这里,”我的内容“里还是没有变化。但是当我们打开这个服务时,却是可以加载的。这意味着出现了一个Bug,就是当本地服务消失的时候,Online的列表没有做更新,虽然在后续操作中,我们看到Online上已经不能使用该服务了。从这里,我们应该还看到另外一个信息,就是这种非托管模式的一个弊端,就是和原始本地服务的一个绑定性。再看下上图中的表,我们可以看到同样的服务,托管和非托管的大小差异,从这里也能解释这一步实验的结果。

 

第三种方式:非托管-打包(如图层包和模板)

  和第二种方式一样,也是非托管方式。就是在ArcGIS Desktop中,”Share as “->"Map Package",如下图:

 

arcgis 连接数据python代码 arcgis连接online_arcgis 连接数据python代码_07

 这类数据到了ArcGIS Online上,并且在共享之后,使用方式就是下载到本地使用。

 

第四种方式:添加项目

操作方式:”我的内容“->"添加项目",选择”在我的计算机上“。这种方式能够添加的内容见这里点击打开链接。

这里就不重复了。

只是需要提一句,当shapefile或是CSv数据到了ArcGIS Online之后,可以将其托管成要素服务。