暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

PostgreSQL之使用场景

开源GIS 2019-10-27
6629

空间数据管理解决方案


由于空间数据具有非结构化、空间关系、分类编码、海量等特征,一般的商用数据库管理系统难以满足要求。为了提高数据库管理系统(DBMS)对空间数据的管理能力,国内外先后出现过如下几种方案:

1.文件与关系数据库混合管理系统

2.全关系型空间数据库管理系统

3.关系型数据库+空间数据引擎

4.扩展对象关系型数据库管理系统

5.面向对象空间数据库管理系统


其中,以3和4使用最为广泛,3的典型代表为ArcSDE+关系数据库,Oracle/MySQL/PostgreSQL等;4的典型代表为PostgreSQL+PostGIS。这两种方式我们逐一进行分析。



关系型数据库+空间数据引擎


此种方案为GIS厂商研发的一种中间件解决方案。用户将自己的空间数据交给独立于数据库之外的空间数据引擎,由空间数据引擎来组织空间数据在关系型数据库中的存储;当用户需要访问数据的时候,再通知空间数据引擎,由引擎从关系型数据库中取出数据,并转化为客户可以使用的方式。关系型数据库仅仅是存放空间数据的容器,而空间数据引擎则是空间数据进出该容器的转换通道。


如下图中,ArcSDE为用户和数据库之间的空间数据引擎中间件。



优点:访问速度快,支持通用的关系数据库管理系统,空间数据按BLOB存取,可跨数据库平台,与特定GIS平台结合紧密,应用灵活。


缺点:空间操作和处理无法在数据库内核中实现,数据模型较为复杂,扩展SQL比较困难,不易实现数据共享与互操作。



扩展对象关系型数据库管理系统

 

此种方案为数据库厂商研发的管理空间数据一种解决方案。由于关系型数据库难以管理非结构化数据(也包括空间数据),数据库厂商借鉴面向对象技术,发展了对象关系型数据库管理系统。


此系统支持抽象的数据类型(ADT)及其相关操作的定义;用户利用这种能力可以增加空间数据类型及相关函数,从而将空间数据类型与函数就从中间件(空间数据引擎)转移到了数据库管理系统中,客户也不必采用空间数据引擎的专用接口进行编程,而是使用增加了的空间数据类型和函数的标准扩展型SQL语言来操作空间数据。


这类支持空间扩展的产品主要有Oracle Spatial/SQL Server Spatial/PostGIS。


优点:空间数据的管理与通用数据库系统融为一体,空间数据按对象存取,可在数据库内核中实现空间操作和处理,扩展SQL比较方便,较易实现数据共享与互操作。


缺点:实现难度大,压缩数据比较困难,目前的功能和性能与第一类系统尚存在差距。



PostgreSQL介绍


PostgreSQL是一种对象关系型数据库管理系统,支持大部分SQL标准并且提供了许多其他现代特性,为除MySQL外使用最广泛的第二大开源数据库。从db-engines官网提供的排名趋势图上可以看到,PostgreSQL的使用流行度在稳定提升。



PostgreSQL具备MySQL的主要特性,具体对比可在db-engines官网查看。PostgreSQL几个重要的特点如下:

1.有功能强大的GIS扩展PostGIS插件:对空间数据管理最为重要

2.对很多高级开发语言提供原生的编程接口

3.支持服务器端脚本,如Python/R等

4.自带全文搜索功能

5.支持把常见的外部数据源当作自己数据库进行查询

......



PostgreSQL空间数据支持


PostgreSQL仅提供了基础空间数据格式和常用的空间查询分析支持,PostGIS作为PostgreSQL的一个扩展,增强了空间管理和分析的能力,它的出现让人们开始重视基于数据库管理系统的空间扩展方式,当前已成为管理空间数据的主流技术。PostGIS支持的主要特性列表参见百度百科。


PostGIS不仅支持快速的查询和空间分析,还提供了众多空间函数,支持主要的空间业务场景。可以使用泰森多边形分析和更多复杂GIS分析功能,完成更多的高级功能:

1.路径计算:使用路网和pgRouting分析最优路径或其他网络分析。

2.多边形的骨架线提取:使用此功能可动态构建多边形的主要的轴。

3.几何分割:将空间范围分割,可显著加速空间处理过程。

4.聚类:结合AI和已有K-means等算法,发现数据中的聚类和模型。



解决方案选择


解决方案的选择取决于实际应用场景。


当数据量较小,仅有少量低并发低频率的更新和查询,且在较长一段期限内无更复杂需求的情况下,继续使用csv/shapefile/geodatabase等文件存储方式反而成本更低。


当数据量较大,或有高并发的编辑场景,或有复杂空间分析场景时,使用方案3和4更为合理。


尤其是在当前大数据时代的背景下,与位置有关的数据量以几何数量级增加,使用场景越来越多,因此需要考虑到未来数据增加时的承载和并发能力提升问题,采用GIS厂商提供的第3类方案会受制于GIS平台的扩展成本和灵活性等因素。因此方案4有较大优势,可以实现服务能力的动态扩展,其中PostgreSQL+PostGIS则为免费且广泛应用的首选解决方案。








最后修改时间:2019-11-24 20:35:50
文章转载自开源GIS,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论