PostGIS学习笔记(开篇)

本文涉及的产品
云原生数据库 PolarDB PostgreSQL 版,标准版 2核4GB 50GB
云原生数据库 PolarDB MySQL 版,通用型 2核4GB 50GB
简介: PostGIS事实上算是笔者开始写博客的第一篇内容。而事实上那篇博文的内容并不丰富,笔者对PostGIS的了解仍然不多,然而17年在OSGeo课程学习时对PostGIS又有了进一步了解,并逐步发现它的强大。刚好最近又遇上一个问题,也使我萌发了开坑PostGIS的想法。

PostGIS事实上算是笔者开始写博客的第一篇内容。而事实上那篇博文的内容并不丰富,笔者对PostGIS的了解仍然不多,然而17年在OSGeo课程学习时对PostGIS又有了进一步了解,并逐步发现它的强大。刚好最近又遇上一个问题,也使我萌发了开坑PostGIS的想法。

1 PostGIS简介

PostGIS是对象关系型数据库系统PostgreSQL的一个扩展,PostGIS提供如下空间信息服务功能:空间对象、空间索引、空间操作函数和空间操作符。同时,PostGIS遵循OpenGIS的规范。PostGIS的版权被纳入到GNU的GPL中,也就是说任何人可以自由得到PostGIS的源码并对其做研究和改进。正是由于这一点,PostGIS得到了迅速的发展,越来越多的爱好者和研究机构参与到PostGIS的应用开发和完善当中。

以上引自百度百科。

下面是我的第一篇博客。

桌面GIS连接Postgresql总结

安装可以在网上搜索教程,在连接ArcGIS、QGIS拓展内容可见上文。

2 关键问题

最近需要的一个工作是基于土地覆被数据和其他数据做一个简单的适宜用地提取。其实总结起来就是各种基础的空间叠加分析,但是却遇上了一个关键问题。土地覆被数据分辨率为300 m,下图即为土地覆被数据(已提取了需要的土地覆被类型)。为了面积准确性,进行栅格转矢量的时候并没有选择简化面。结果导致数据量非常巨大。

打开属性表可以发现,研究区一共有3146163条数据。

然后需要和另外一个结果做空间叠加(Intersection,相交),得到适宜用地的空间分布。结果由于数据量太大运行时间较长。在ArcGIS平台测试结果如图。花了21分钟27秒。

笔者同时尝试着使用了ArcGIS Pro来进行大数据量的矢量相交计算。计算时间为13分钟6秒。

也有人给的建议是选用PostGIS进行计算。于是进行了测试。

需要设置SRID和geometry。接下来在PostGIS的SQL查询里运行如下的SQL查询。

SELECT ST_Intersection(suitablewgs84.geometry, ecooutwgs84.geometry) 
FROM public.suitablewgs84 INNER JOIN public.ecooutwgs84 on ST_Intersects(suitablewgs84.geometry, ecooutwgs84.geometry)

可能是目前学习不够深入,速度似乎不够快。而这也是本部分学习笔记的开篇。

先放一些PostGIS的资料。

postgresql学习资料

PostGIS

相关实践学习
使用PolarDB和ECS搭建门户网站
本场景主要介绍基于PolarDB和ECS实现搭建门户网站。
阿里云数据库产品家族及特性
阿里云智能数据库产品团队一直致力于不断健全产品体系,提升产品性能,打磨产品功能,从而帮助客户实现更加极致的弹性能力、具备更强的扩展能力、并利用云设施进一步降低企业成本。以云原生+分布式为核心技术抓手,打造以自研的在线事务型(OLTP)数据库Polar DB和在线分析型(OLAP)数据库Analytic DB为代表的新一代企业级云原生数据库产品体系, 结合NoSQL数据库、数据库生态工具、云原生智能化数据库管控平台,为阿里巴巴经济体以及各个行业的企业客户和开发者提供从公共云到混合云再到私有云的完整解决方案,提供基于云基础设施进行数据从处理、到存储、再到计算与分析的一体化解决方案。本节课带你了解阿里云数据库产品家族及特性。
目录
相关文章
|
1月前
|
存储 关系型数据库 数据库
PostGIS简介
PostGIS是PostgreSQL的扩展插件,增强其处理地理空间数据的能力,支持空间数据存储、索引、查询及分析等功能。它适用于2D和3D空间数据,提供多种几何类型和栅格数据支持,兼容多种第三方工具。安装需先配置EPEL和PowerTools仓库,然后通过DNF安装PostGIS包,并在目标数据库中启用扩展。PostGIS支持geometry、geography和raster等数据类型,适用于不同场景的空间数据分析。
84 0
|
6月前
|
SQL PHP
thinkphp之进阶sql语法,持续更新
thinkphp之进阶sql语法,持续更新
36 0
|
5月前
|
分布式数据库 索引
Greenplum实用技巧
以上是一些基本的Greenplum实用技巧,希望对你有所帮助。
48 1
|
7月前
|
SQL 存储 分布式计算
Kylin使用心得:从入门到进阶的探索之旅
【5月更文挑战第2天】Apache Kylin是开源大数据分析平台,提供亚秒级OLAP查询。本文深入解析Kylin的工作原理,包括预计算模型Cube、构建过程和查询引擎。常见问题涉及Cube设计、查询性能和资源管理,解决方案涵盖合理设计、性能监控和测试验证。文中还分享了Cube创建的JSON示例,并探讨了Cube构建优化、查询优化、与其他组件集成、监控维护及生产环境问题解决。通过学习和实践,读者能有效提升数据洞察力和决策效率。
461 5
|
7月前
|
关系型数据库 MySQL 数据库
MySQL必知必会:第一到第十章《精华合集》
MySQL必知必会:第一到第十章《精华合集》
SQL语法题合集(持续更新)
SQL语法题合集(持续更新)
|
存储 SQL 自然语言处理
NoSQL到底怎么用?(上)
NoSQL到底怎么用?
294 0
NoSQL到底怎么用?(上)
|
存储 自然语言处理 负载均衡
NoSQL到底怎么用?(下)
NoSQL到底怎么用?
148 0
NoSQL到底怎么用?(下)
|
SQL NoSQL 关系型数据库
Postgre SQL进阶实战指南 | 开发者社区精选文章合集(四十一)
PostgreSQL是一个功能非常强大的、源代码开放的客户/服务器关系型数据库管理系统,同时也是一种特性非常齐全的对象-关系型数据库管理系统自由软件。揭秘PostgreSQL,深入了解,走进实战玩转PostgreSQL 。
Postgre SQL进阶实战指南 | 开发者社区精选文章合集(四十一)
|
SQL 关系型数据库 大数据
《OdooERP应用与开发案例教程》试读:第二章-PostgreSQL概述
文/开源智造联合创始人老杨 本文来自《OdooERP应用与开发案例教程》的试读章节。书籍尚未出版,请勿转载。欢迎您反馈阅读意见。 PostgreSQL是Odoo支持的数据库。PostgreSQL是起源于大学的一个历史很长的开源数据库系统。
1930 0