对于轻量级GIS应用,选择具备时空能力的云上数据库再搭配开源GIS软件,能够快速构建稳定、廉价、实用的GIS解决方案。Ganos是阿里云自研时空基础设施(PaaS层)的核心引擎,该引擎整合了云上异构计算并行加速、OSS大规模存储等基础设施能力,上层与RDS PostgresSQL数据库、POLARDB for PG/Oracle云原生数据库、HBase大数据等融合,为云计算基础产品提供了免费但专业级的时空数据存储、查询与分析计算能力。
本文主要介绍如何将Ganos作为数据源与GeoServer、uDig、QGIS等最常用的开源GIS软件对接,为基于开源GIS应用方案选型提供支撑。

支持常用各大开源GIS软件

因Ganos设计上充分兼容了PostGIS接口,因此理论上可以无缝对接支持PostGIS的各类软件生态。

选取部分常用开源GIS软件说明如下表所示:

开源GIS软件 软件定位 用途 Ganos作用
QGIS 基于C++的桌面GIS 数据的可视化、管理、编辑、分析以及印刷地图的制作,功能全面 兼容postgis形式的数据源
Geoserver GIS服务器软件 发布地图数据,允许用户对特征数据进行更新、删除、插入操作,方便共享空间地理信息 兼容postgis形式数据源
uDig 基于Java的桌面GIS 桌面GIS及开发框架,对互联网GIS、网络地图服务器和网络功能服务器有特别的加强 兼容postgis形式的数据源
OpenJump 基于Java的桌面 GIS 内置了地图编辑、可视化,GIS空间分析等操作,并可以通过插件方式进行功能的定制或拓展 兼容postgis形式的数据源
MapNik 基于Python/C++ 地图渲染引擎 数据形式的地图通过一个样式表的定义渲染成位图格式提供 WMS等服务 兼容postgis形式的数据源

以上主要集中在GIS最为常用的几何对象(矢量)部分,需要注意的是,Ganos在除了兼容PostGIS能力外,其他栅格、DEM、点云、网络、轨迹等高级时空特性也能与这些软件打通。如有这方面的需求,可以直接通过文末联系方式获得支持。

简单连接配置,即插即用

以下以QGIS、GeoServer、OpenJump、uDig为例,展示以阿里云PostgresSQL Ganos或POLARDB Ganos为数据源的对接与应用,其他基于PostGIS数据源驱动的开源3S软件等均类似,不再一一展开。
首先,需要通过阿里云主页购买RDS PostgresSQL、POLARDB for PG或POLARDB for Oracle实例(见文末链接,其中POLARDB for PG/Oracle目前可免费申请公测),并通过SQL插入或shp2pgsql工具导入矢量数据。数据导入后,可以通过控制台自带的DMS工具查看所导入的数据:

接下来,可以基于Ganos数据源,采用开源GIS软件来执行各类操作。
(1)QGIS连接Ganos,可浏览、查看、编辑、分析Ganos中的空间数据。

(2)GeoServer连接Ganos,可以将矢量数据发布为WMS,WFS等服务,实现地理空间数据的快速共享应用。

(3)OpenJump连接Ganos ,可浏览、查看、编辑、分析Ganos中的空间数据。

(4)uDig连接Ganos ,可浏览、查看、编辑、分析Ganos中的空间数据。

不一样的底座,更强大能力

通过兼容PostGIS接口,Ganos具备了几乎即插即用、快速生态兼容的能力,且所有兼容PostGIS的代码都无需改动。同时,Ganos通过与阿里云基础设施融合,提供比自建PG+PostGIS更高系统稳定性和可靠性、更强数据处理能力和更大数据处理规模,尤其在时空轨迹数据处理能力上,要比原生PostGIS提高50-100性能。后续Ganos将遵循OGC规范,适配更多数据种类,广泛支持包括开源和商业不同3S平台,逐步沉淀基础时空云计算能力到云计算基础平台,赋能ISV厂商,推动时空云计算作为数字化转型的基础引擎普惠到更多客户。

如何获取Ganos

时空引擎Ganos已无缝嵌入于阿里云以下数据库产品中,您无需为时空数据管理支付额外费用,了解更多相关信息请戳链接:

本文作者:ganos

原文链接

本文为云栖社区原创内容,未经允许不得转载。

即插即用,基于阿里云Ganos快速构建云上开源GIS方案的更多相关文章

  1. Spring Boot 基于Spring Initializer 的快速构建 day02

    一.基于Spring Initializr 快速构建Spring Boot项目(快速) 备注:需要联网 这是使用Intellij Idea快速构建可以为我们省去大量的pom.xml配置时间,简单操作, ...

  2. 阿里云如何基于标准 K8s 打造边缘计算云原生基础设施

    作者 | 黄玉奇(徙远)  阿里巴巴高级技术专家 关注"阿里巴巴云原生"公众号,回复关键词 1219 即可下载本文 PPT 及实操演示视频. 导读:伴随 5G.IoT 的发展,边缘 ...

  3. 构建基于阿里云OSS文件上传服务

    转载请注明来源:http://blog.csdn.net/loongshawn/article/details/50710132 <构建基于阿里云OSS文件上传服务> <构建基于OS ...

  4. NodeJS 基于 Dapr 构建云原生微服务应用,从 0 到 1 快速上手指南

    Dapr 是一个可移植的.事件驱动的运行时,它使任何开发人员能够轻松构建出弹性的.无状态和有状态的应用程序,并可运行在云平台或边缘计算中,它同时也支持多种编程语言和开发框架.Dapr 确保开发人员专注 ...

  5. 阿里云吴天议:云原生SDWAN 应用 构建智能化云原生SDWAN生态

    2019年11月16日 SDWAN 大会在北京正式召开.阿里云网络资深产品专家吴天议先生继阿里云网络研究员祝顺民先生发表了对云原生SDWAN的进化与展望之后(原文请见https://bit.ly/2K ...

  6. 阿里云基于OSS的云上统一数据保护方案2.0技术解析

    近年来,随着越来越多的企业从传统经济向数字经济转型,云已经渐渐成为数据经济IT新常态.核心业务系统上云,云上的业务创新,这些都产生了大量的业务数据,这些数据也成为了企业最重要的资产.资源. 阿里云基于 ...

  7. 阿里云智能数据构建与管理 Dataphin公测,助力企业数据中台建设

    阿里云智能数据构建与管理 Dataphin (下简称“Dataphin”)近日重磅上线公共云,开启智能研发版本的公共云公测!在此之前,Dataphin以独立部署方式输出并服务线下客户,已助力多家大型客 ...

  8. 阿里云基于OSS的云上统一数据保护方案2.0正式发布

    近年来,随着越来越多的企业从传统经济向数字经济转型,云已经渐渐成为数据经济IT新常态.核心业务系统上云,云上的业务创新,这些都产生了大量的业务数据,这些数据也成为了企业最重要的资产.资源.阿里云基于O ...

  9. go程序基于阿里云CodePipeline的一次devops实践

    背景 最近朋友有个项目代码托管用的码云,测试服务器(阿里云ECS)只有一台,三四个人开发,于是想基于阿里云的CodePipeline快速打造一套自动化cicd的流程,使用docker来进行多套环境部署 ...

随机推荐

  1. Spring这棵大树

    目前项目中用的框架大多数都是Spring,一直想找时间对这个框架做一个全面的了解. 今天先以导图的形式画出来Spring都包含的主要模块,即使有些模块目前用不上,但说不定在将来的应用场景时想到Spri ...

  2. Lab2 新增的细节

    entry.S 新增加了这个入口函数 bootloader 加载完成后 将执行 kern_entry 而非lab1 中的kern_init defs.h 使用了 ({})宏定义的方式,并且执行了一行定 ...

  3. 洛谷P2859 [USACO06FEB]摊位预订Stall Reservations

    P2859 [USACO06FEB]摊位预订Stall Reservations 题目描述 Oh those picky N (1 <= N <= 50,000) cows! They a ...

  4. web前端学习(二)html学习笔记部分(11)-- 没有标号记录的知识合集

    这一部分内容相对比较简单,就不按规矩排序了.(主要是网站上也没有这一部分内容的排序) 1.  html5的 非主体结构元素 学习笔记(1)里面记录过. 2.  html5表单提交和PHP环境搭建 1. ...

  5. 【Pyqt5】自定义信号简单原理(易懂版),多窗口交互,传输数据,调用方法

    PS:如果你想在2窗口调用1窗口的内部方法,或者在2窗口传递数据给1窗口数据,本片博客可以放心食用 主窗口: class MainWindow(QWidget,Ui_MainFrom): insert ...

  6. win10下安装mongodb(解压版)

    首先到官网下载安装包.(https://www.mongodb.com/download-center#community) 1.创建mongodb目录 2.配置文件mongodb.config 3. ...

  7. conda 下配置环境

    conda list 查看已有环境(感觉anaconda 中查看的不全,只有指定路径的,但是这个路径和默认创建的路径不一样 然后我发现 要安装traits 库必须要的是PyQt4 但是我的py3下只有 ...

  8. JS DOM节点的增删改查

    合并拆分 行内样式  script写在html里面

  9. Leetcode680.Valid Palindrome II验证回文字符串2

    给定一个非空字符串 s,最多删除一个字符.判断是否能成为回文字符串. 示例 1: 输入: "aba" 输出: True 示例 2: 输入: "abca" 输出: ...

  10. BootstrapValidation一些tips

    BootstrapValidation一些tips:1. callback的用法 如果你有一些特别的检查需要,比如两个元素必需有一个有值,你可以在两个元素上加上callback,例:sel和cb必需有 ...