postgis空间数据导入及可视化

本文涉及的产品
云原生数据库 PolarDB MySQL 版,通用型 2核4GB 50GB
云原生数据库 PolarDB PostgreSQL 版,标准版 2核4GB 50GB
简介: 本文重点介绍在postgis中,三种矢量数据的导入管理方式,分别是使用postgis导入工具、gdal的ogr2ogr函数以及编程式​。

      众所周知,postgis是一个开源的高性能空间数据库,其基于postgresql数据库进行扩展,完整支持OGC标准,同时提供了空间管理及空间分析等丰富的函数支撑。

      当你拿到矢量数据后,为了让大家进行共享数据,而不是依赖于读取文件这种方式进行数据读取,可以采用数据库这种方式进行分享。同时可以基于标准sql进行数据操作,提高数据处理与分析效率。

本文将以矢量数据为例,分享三种常见的矢量数据导入到postgis数据库的方法。同时在pgadmin中进行空间数据的可视化。

一、系统操作环境说明:

     1、操作系统:windows7 专业版 64位

     2、gdal 3.4

     3、postgis 12

     4、postgresql 12

二、需要提前配置好的环境

   1、在postgresql中创建一个数据库,安装后执行以下postgis扩展。

CREATE EXTENSION postgis;

   2、执行以下语句,如果没有报错,说明扩展安装成功

SELECT ST_SetSRID(ST_Point(-87.71,43.741),4326),ST_GeomFromText('POINT(-87.71 43.741)',4326)

三、使用postgis shapefile 导入工具

   1、打开postgis shapefile导入工具,点击开始,找到postgis工具

   image.png

2、打开后看到以下页面

image.png

3、配置postgis连接

image.png

4、选择需要导入的shapefile文件。

image.png

5、选择文件后,点击import将矢量数据导入到postgis中

image.png

四、使用gdal的ogr2ogr命令进行导入

     1、在gdal的bin\gdal\apps目录下,可以看到有很多gdal提供的命令行函数,通过调用这些命令行函数可以完成许多空间数据处理,分析。其中ogr2ogr就是一个矢量数据处理命令。

     2、ogr2ogr函数说明

image.png

      这里简单说几个比较常用的参数:

# -loc LAUNDER=NO -- 为了保持数据名,字段的是大小写区分的,不然会默认为小写字母。lco GEOMETRY_NAME=geom            将空间字段重命名。-nln biz_china3 表示对图层导入后表名进行修改。

参考命令如下:

ogr2ogr.exe-f PostgreSQL PG:"host=localhost port=5432 user=postgres password=postgres dbname=yelang_test" F:/vector_data/other/gdal_demo_data/china-data/china.gdb-overwrite -progress --config PG_USE_COPY YES -lco LAUNDER=YES -lco GEOMETRY_NAME=geom -nln biz_china3

五、使用geotools结合gdal进行更多自定义处理

       关于使用geotools进行矢量数据导入的例子,可以参阅之前的博客,基于GeoTools的GeoJson导入到PostGis实战以及干货!使用Geotools解析shap数据实例

六、使用pgadmin查看导入的空间数据

image.png

image.png

      总结:本文重点介绍在postgis中,三种矢量数据的导入管理方式,分别是使用postgis导入工具、gdal的ogr2ogr函数以及编程式。其中,编程式的灵活度最高,还可以自定义处理逻辑,但对研发人员要求较高。其它两种使用成本低,开箱即用。各位可以根据自身业务需要进行选型采用。采用编程式导入还有一个好处就是可以进行投影和坐标转换,而前两者都会或多或少存在一些问题。希望文章对您有帮助,欢迎指正交流。



相关实践学习
使用PolarDB和ECS搭建门户网站
本场景主要介绍基于PolarDB和ECS实现搭建门户网站。
阿里云数据库产品家族及特性
阿里云智能数据库产品团队一直致力于不断健全产品体系,提升产品性能,打磨产品功能,从而帮助客户实现更加极致的弹性能力、具备更强的扩展能力、并利用云设施进一步降低企业成本。以云原生+分布式为核心技术抓手,打造以自研的在线事务型(OLTP)数据库Polar DB和在线分析型(OLAP)数据库Analytic DB为代表的新一代企业级云原生数据库产品体系, 结合NoSQL数据库、数据库生态工具、云原生智能化数据库管控平台,为阿里巴巴经济体以及各个行业的企业客户和开发者提供从公共云到混合云再到私有云的完整解决方案,提供基于云基础设施进行数据从处理、到存储、再到计算与分析的一体化解决方案。本节课带你了解阿里云数据库产品家族及特性。
目录
相关文章
|
4月前
|
关系型数据库 Serverless 定位技术
PostgreSQL如何使用GIS函数计算两个点连线的中间点?
PostgreSQL如何使用GIS函数计算两个点连线的中间点?
267 62
|
8月前
|
存储 数据可视化 关系型数据库
矢量数据库在地理空间数据处理中的应用
【4月更文挑战第30天】矢量数据库在地理空间数据处理中展现优势,高效存储管理高维向量数据,支持快速查询、空间分析与可视化。分布式处理能力适应大数据量需求,提供高效、灵活、可扩展及可视化支持,是处理地理空间数据的理想选择。随着技术进步,其应用将更加广泛。
|
存储 数据可视化 数据管理
Ganos三维引擎系列(三):BIM数据管理与可视化功能解析
本文介绍了阿里云多模态时空数据库Ganos三维引擎在BIM数据管理中的应用。Ganos三维引擎支持三大类存储结构:表面网格模型、体网格模型与3D实景模型,其中表面网格模型(SFMesh)用于存储带有语义的类BIM精细化三维模型,同时提供了空间索引、分析算子、导入工具、可视化支撑等功能,本文详细介绍表面网格模型应用于IFC格式的BIM数据管理与可视化等功能。
|
存储 SQL 数据可视化
Ganos三维引擎系列(一):倾斜摄影数据管理与可视化功能解析
本文介绍了阿里云多模态时空数据库Ganos三维引擎在倾斜摄影数据管理中的应用。Ganos三维引擎支持三大类存储结构:表面网格模型、体网格模型与3D实景模型,其中表面网格模型用于存储带有语义的类BIM精细化三维模型,体网格模型用于存储地质体等非匀质“场”类三维模型,3D实景模型用于存储倾斜摄影、精白模等用于渲染的三维模型,三种存储结构都提供了原生数据类型、空间索引、分析算子、导入导出工具、可视化支撑等功能,为数字孪生类应用提供闭环的存算显能力,本文重点介绍基于3D实景模型开展倾斜摄影数据管理与可视化等功能。
|
存储 SQL NoSQL
轨迹数据处理“小钢炮”,Lindorm时空引擎Ganos实测
本文在Lindorm Ganos中对常用的时空场景进行测试,用过程和实际数据展示Lindorm Ganos具备的能力和特性
轨迹数据处理“小钢炮”,Lindorm时空引擎Ganos实测
|
并行计算 关系型数据库 数据库
|
SQL 分布式计算 关系型数据库
在SmartBI中使用ClickHouse数据源进行透视分析
在使用SmartBI进行数据分析时,通过MPP高速缓存库可以大大加快计算速度,提高工作效率。我司SmartBI MPP高速缓存库的底层技术为ClickHouse。ClickHouse是一个面向联机分析处理(OLAP)的开源的面向列式存储的数据库管理系统,与Hadoop, Spark相比,ClickHouse很轻量级,由俄罗斯第一大搜索引擎Yandex于2016年6月发布, 开发语言为C++。
1039 0
在SmartBI中使用ClickHouse数据源进行透视分析
|
关系型数据库 数据库 PostgreSQL
在 Docker 上搭建 PostGIS 数据库实现空间数据存储及可视化
此文旨在记录与传播在 Docker 上搭建 PostGIS 数据库实现空间数据存储及可视化的知识要点。
24893 0
|
数据库
时空数据库系列(二)-空间数据典型处理
本文阐述了空间数据处理中一些常见问题如何解决,为大家提供参考。
11394 0