1、ArcGIS 10.2支持原生数据发布为要素服

有没有将自己已有的空间数据发布为要素服务的需求?有没有将非Esri空间数据类型的数据作为服务在Web端展示的需求?
    ArcGIS 10.2 for Server增加了这方面的能力,ArcGIS 10.2 for Server 可以将原生数据库中的空间数据发布为要素服务。
    想必都知道现在的关系型数据库,也都对空间数据有一定的支持,如postgreSQL的pg_geometry,Oracle的sdo_geometry,SQL Server的geometry等,如果用户的数据已经是这些格式了,如何发布为要素服务?
    在ArcGIS 10.0的时候Esri支持了要素服务,因为要素服务提供了在线编辑的功能,因此得到很多用户的青睐,但是发布要素服务有一个条件,就是数据必须存储在SDE数据库中,如果用户的空间数据已经是原生数据库的空间数据类型,要发布要素服务的话,我们需要将这些数据到SDE数据库中。
    当然Esri也会考虑用户的需求,和针对用户的需求做出相应的反应,ArcGIS 10.2 for Server 就可以直接将这种原生的空间数据作为要素服务暴露出去,这样的话,省了数据转换等一系列的操作,更让人兴奋的是,这样的能力不需要SDE的支持。
下面我们就以PostgreSQL数据库为例进行说明。
    PostgreSQL数据要支持空间数据,需要安装一个扩展- PostGIS,这个扩展和Oracle的 Oracle Spatial类似。PostGIS 是 Refractions Research 开发的产品,用于为 PostgreSQL 数据库添加对 PostGIS 空间数据类型的支持。PostGIS 遵从开放地理空间联盟 (OGC) 关于结构化查询语言 (SQL) 的简单要素规范。它使用 OGC 熟知二进制 (WKB) 和可识别文本 (WKT) 表示几何。实际上,PostGIS 是向 PostgreSQL 添加空间类型。

2、安装POSTGIS

安装POSTGIS有两种方法:1,可以从http://download.osgeo.org/postgis/下载,根据自己已经安装的postgreSQL版本进行选择,请注意,ArcGIS for Server支持(9.0系列,9.1系列和9.2系列的postgreSQL);2,也可以在postgreSQL安装后自带的Stack Builder中进行安装,在这里我的是后者。

2.1 打开Stack Builder

2.2 选择空间扩展,可以根据需要选择其他的辅助功能

2.3 选择下载目录

2.4 选择创建空间数据库前面的复选框


    等一会儿,当安装完成后,会在postgreSQL中创建template_postgis_20等模板和postgis20数据库如下:
      

3、数据准备

POSTGIS提供了将shape数据转成PG_GEOMETRY的工具,但是这里我要介绍的不是这个工具,而是通过ArcMap完成这个数据转换的操作,ArcMap可以在PostgreSQL数据库中创建要素类,导入数据,导出数据等,这些功能大大简化了数据转换的操作,也很方便。
    在操作数据之前,首先要新建postgres模式
        
    接下来使用直连的方式连接PostgreSQL数据库,在ArcMap右侧的Catalog目录中进行连接。
      
    这时,我从geodatabase中找到一个多边形数据复制到postgis20数据库当中,作为数据库中的原生空间数据。然后,将它加载到ArcMap当中并保存地图文档。
      
    在添加完数据库之后,我们可以在PostgresSQL当中看到该数据,如下图所示。
      

4、发布要素服务

在发布时,会要求数据库必须进行注册,可以提前在Server属性当中进行设置。
      
    选择Register Database,弹出对话框如下图左侧,为数据库命名,然后通过Import方式,找到连接的数据库并选择,如下图右侧。点击OK。
      

现在,可以发布要素服务了。在Fiel菜单下找到Share As选择Service。

作者:小醉、Ivorymjl

最新文章

  1. Nodejs之MEAN栈开发(二)----视图与模型
  2. ubuntu下安装nodejs,无node情况
  3. Linux cp命令使用说明
  4. css3-新属性-用户界面
  5. POJ1741:tree
  6. grub paramiter & menu.list
  7. Linux设计准则
  8. 318. Maximum Product of Word Lengths ——本质:英文单词中字符是否出现可以用26bit的整数表示
  9. flex 图片旋转(解决公转和自转问题)
  10. Win7下使Users数据与程序分离
  11. VC中监测函数运行时间(一)—分钟,秒,毫秒
  12. poj1014 Dividing (多重背包)
  13. 浅析Thinkphp框架中运用phprpc扩展模式
  14. SQL Server索引进阶:第二级,深入非聚集索引
  15. mysql基础(mysql数据库导入到处) 很基础很实用
  16. phpcms 列表项 内容项
  17. 3.Java日志框架slf4j、jcl、jul、log4j1、log4j2、logback大总结
  18. C# DataSet数据导入Excel 修正版- .net FrameWork 4.0以上
  19. Homebrew update error not work on OSX
  20. Linux云服务器安装Elasticsearch

热门文章

  1. java消息中间件入门
  2. 数据结构基础---Binary Search Tree
  3. 51nod 1076 2条不相交的路径
  4. [BZOJ2453]维护队列|分块
  5. centos 下构建lamp环境
  6. NGINX: 反向代理 websocket
  7. requests上传文件
  8. 第三方库SDWebImage的原理
  9. JSP(1) - JSP简介、原理、语法 - 小易Java笔记
  10. redis特性与使用场景