shp与PostGIS在项目应用中比较

简介: 一 属性查询笔者使用一模一样的osm数据,数据量8.7万个点,该数据有一个name列存储点的名称,本次实验,笔者使用 name='练塘镇'作为查询条件,查询语句如下:http://localhost:8090/geoserver/wfs?service=WFS&version=1.

一 属性查询

笔者使用一模一样的osm数据,数据量8.7万个点,该数据有一个name列存储点的名称,本次实验,笔者使用 name='练塘镇'作为查询条件,
查询语句如下:

http://localhost:8090/geoserver/wfs?service=WFS&version=1.0.0&request=GetFeature&typename=cite:places1&srsname=EPSG:4326
&outputFormat=application/json&cql_filter=name='练塘镇'

查询结果如下:

1.1 shp格式查询效率

img_093836e33ee091a5ff215465e2d27cd8.png
1.png

1.2 PostGIS不建立索引查询效率

img_0b0becb653ffab754080d32ee1788466.png
2.png

1.3 PostGIS建立索引查询效率

img_5aed77fde695df81036aabfc0edbd87e.png
3.png

结论:属性查询这方面,以本例说明,Postgresql的表查询不建立索引比shp格式的数据存储快125倍,建立索引快338倍。

二 空间查询

用一个多边形与点图层做叠加分析,查询多边形范围内的点,查询语句如下:

http://localhost:8090/geoserver/wfs?service=WFS&version=1.0.0&request=GetFeature&typename=cite:places&srsname=epsg:4326
&outputFormat=application/json&cql_filter=Intersects(geom,POLYGON((115 29,115 30,116 30,116 29,115 29)))

2.1 shp空间查询

img_e1f698d6fd1909797b88e68fcee55374.png
4.png

2.2 PostGIS空间查询

img_dffa024801abe242af67207223022183.png
5.png

结论:空间查询方面差别不是特别明显,初次查询pg的比shp快8倍,以后查询差不多,但pg仍然比shp快。个人猜测,esri针对shp格式的图形查询进行了优化。

三 多表关联

在数据库中存储的话,多表之间可以建立join关系,建立视图,建立存储过程等等,可以在不同业务之间的多表与图形join得到专题报表。
shp除了用后台获取数据,自行拼装以外,不能多个shp产生join这种操作。
实际项目业务表很多,一般和图形表关联使用,shp不能胜任这个任务。

结论:项目开发,shp只定位是数据中介,起到临时存储的作用,实际应用时,应导入空间数据库中。

相关文章
|
存储 Java 定位技术
gis利器之Gdal(二)shp数据读取
本文首先简单介绍了空间数据shp数据的基本知识,其常见的文件组成形式。使用qgis软件对数据进行常规预览,最后重点介绍了使用gdal对矢量信息进行读取,​包括空间信息和属性信息
965 0
gis利器之Gdal(二)shp数据读取
|
存储 JSON 关系型数据库
基于GeoTools的GeoJson导入到PostGis实战
GeoJson是一种对各种地理数据结构进行编码的格式,基于json的地理空间信息数据交换格式。GeoJson对象可以用来表示几何,特征或者特征集合。支持地理点、线、面、多点、多线、多面及几何集合。GeoJson不是本文的重点,因此不再赘述。
1118 0
基于GeoTools的GeoJson导入到PostGis实战
|
4天前
|
人工智能 数据可视化 定位技术
【工具使用】QGIS导入csv文件进行数据可视化
【工具使用】QGIS导入csv文件进行数据可视化
21 0
|
7月前
|
存储 Cloud Native 关系型数据库
Ganos矢量栅格数据快速入库方法简介
本文介绍了Ganos提供的矢量、栅格数据高效入库方法,帮助用户快速理解云原生数据库空间数据的写入方案,以便更好的使用Ganos矢栅数据的处理能力。
|
9月前
|
存储 JSON 前端开发
GIS开发:GeoJSON文件压缩
GIS开发:GeoJSON文件压缩
522 0
|
10月前
|
存储 Oracle 前端开发
详细讲解orcale空间数据库以及空间数据库内置函数
详细讲解orcale空间数据库以及空间数据库内置函数
322 0
|
11月前
|
存储 SQL 关系型数据库
一篇文章带你玩转PostGIS空间数据库 1
一篇文章带你玩转PostGIS空间数据库
|
11月前
|
SQL 存储 算法
一篇文章带你玩转PostGIS空间数据库 2
一篇文章带你玩转PostGIS空间数据库
|
关系型数据库 数据库连接 数据库
空间数据库系列:PostGIS和qgis的数据连接
如何使用QGIS连接带postGIS扩展的postgresql数据库
598 0