GIS开发:使用空间数据库
在早期GIS开发中,空间数据库的使用比较少,一般都是使用Arcgis Engine进行GIS空间分析等功能的开发,或者通过Spatial Database Engine(sde)空间数据引擎调用数据库的数据进行功能开发,开源方面,gdal使用的也比较多。
随着技术的发展,现在好多数据库的都支持空间数据扩展,不管是关系型数据库,还是NoSQL数据库,常见的有Oracle数据库的空间,SQL Server2008版本以后也加入了空间扩展,MySQL有空间扩展,Postgresql专门的扩展Postgis,文件型的Sqlite也能通过各种开发语言,实现空间数据的扩展(Spatialite),NoSQL中的mongodb、couchbase同样也能够实现空间数据的相关操作。
对比于操作shapefile等文件类型的空间数据,空间数据库在存储、开发、效率上有相当不错的优势。
开发一个GIS的分析功能,使用文件类型的空间数据,需要使用开发语言,将数据读取一遍,逐个进行分析,查验结果,而在空间数据库中,简单的只需要一个sql语句,就能将结果获取出来,这在代码的编写数量可能就减少不少工作量,数据库引擎一般都经过相当的优化,在分析过程的效率对比自己读取也会有相当的提高,而且有些空间数据库还能提供一些类似于路径分析的高级分析,这也能提高GIS应用开发的效率。
数据存储更新方面,文件数据的修改,一般都需要通过专门的工具进行修改,更新数据也就相当于对于整个文件修改,在数据库中的数据,存储更新,也可能通过几个sql语句就能够进行修改,不同的数据库,可将空间数据表的坐标信息导出成wkt、wkb等通用格式,方便数据的迁移,而且wkt、wkb格式在各类地图引擎中,都有可用的api直接解析成平台的坐标信息。
数据的共享,目前各类gis发布软件,能够支持连接数据库的数据,进行共享发布,再通过开发的业务数据服务,支持BS\CS客户端的数据访问。
更多文章请关注公众号查看
GIS开发:使用空间数据库相关推荐
- 学GIS开发怎么入门,GIS专业的学生应该掌握什么知识 ?
(一) 打好编程基础 这篇文章仅给那些GIS专业的,想学GIS开发的,但现在还没怎么入门不知道该从哪学起的在校生参考的.这篇文章不是讨论GIS开发是否有前途的,也不是讨论做GIS是不是就一定应该做开发 ...
- GIS开发学习推荐书目
书名 作者 出版社 版次 GIS 基础 地理信息系统导论 [US] Kang-tsung Chang: 陈健飞 译 电子工业出版社 第七版 ArcGIS地理信息系统空间分析实验教程 汤国安 杨昕 科学 ...
- 学习成长之路 (初章 三个月建成微信 小程序商城、ArcEngine C# GIS开发入门)
学习 成长之路(初章 ) 三个月 建成微信小程序商城 .ArcEngine C# GIS开发入门 自我简介 先简单介绍一下,我是Domen,是一个彻彻底底的新手 . 大一 大学大一没好好学习,搞这搞那 ...
- ArcEngine C# GIS开发入门作业 (三)Ex04——实现地图的简单渲染和唯一值渲染
文章评论 写评论 sinat_37432938: 可以说非常有参考的意义,谢谢分享 4周前 #2楼 举报回复查看回复(1) domen_dragon 回复 sinat_37432938: 哈哈,谢谢夸 ...
- 最全GIS开发编程语言汇总及分类
目录 编程语言的特征 GIS开发通用编程语言 一级流行编程语言 Python JavaScript C# C++ Java 二级流行编程语言 C PHP R/S Ruby Rust Shell SQL ...
- GIS开发与应用(实验一)
实验一:开发环境的安装与熟悉 实验目的: 实验准备 实验内容及要求 实验过程及步骤 实验目的: 1.熟悉GIS开发所用的软件环境: 2.了解各个软件的功能作用: 3.了解GIS开发的流程思路. 实验准 ...
- 从事GIS开发多年,2017年对GIS行业的心得,尤其对三维GIS的理解
个人群号 309141738 本人从事GIS方面开发六年了,但是一开始大学并未学的是GIS方面的专业,本人学习的专业叫对日软件开发,呵呵...很新颖的一个名字把,没错,本来想着毕业后去日本从事软件开发 ...
- 基于TerraDeveloper的三维GIS开发研究
[中文题名] 基于TerraDeveloper的三维GIS开发研究 [英文题名] Research on the Development of 3D GIS Based on TerraDevel ...
- Google Maps和GIS开发资源收集
Google Maps JQuery Maps google map是怎样工作的 Google Map API基本概念 Google Maps API编程资源大全 google map限制地图缩放级别 ...
最新文章
- 前沿科技 | 中科院科学家在关于运动规划的环路机制研究方面获进展
- Kali Linux重设root密码
- Linux中的文件特殊权限
- spring step 1 : 什么是spring
- pg 事务 存储过程_PgpoolII实现数据分区存储及性能分析
- 中国搜索 20 年:易守难攻、刚需不减!
- 【渝粤教育】国家开放大学2019年春季 2766养羊技术 参考试题
- 秩和比算法matlab程序,Matlab学习系32. 秩和比综合评价法.docx
- android4.4 计算器,卡西欧仿真计算器
- 计算机图形学(二)——画一个三角形1.0
- python求两数最大公因数_使用辗转相除法求两个数的最大公因数(python实现)
- ZCMU 5122: 小何的旅行I
- F#中有趣的计量单位
- Web 前端性能优化
- 华为OD机试真题 C++ 实现【预订酒店】【2022.11 Q4 新题】
- vue读取文件夹下面的文件名称
- 大连30年来共产生30位世界冠军 获得奥运金牌4枚
- 强制卸载某些卸载不了的软件(例如卸载samba)
- Glew库 GLTools库
- linux cp alias,linux基础之命令别名alias
热门文章
- 修改idea中git提交的作者(Author)和邮箱
- 技校计算机系游戏制作,计算机游戏制作教学质量怎么样_孙进技校模式新颖
- Java爬虫采集电影,java的webmagic爬虫实现爬出某电影网的下载地址
- 特征选择-皮尔逊系数、RFE(原理及代码)
- IE-LAB网络实验室:CCNA认证在哪考?
- Android利用IP地址定位城市(全世界可用)
- 微信公众号css实现滑动效果,基于HTML/CSS/JS微信公众号展示页面模板
- java中onclick的用法,使用jQuery修改onclick函数
- PPT基础(二十)合并两份PPT
- 计算机网络.第二节课.笔记.奈氏准则、香农公式、差分曼彻斯特编码、曼彻斯特码、单工通信、半双工通信、双工通信、码元