使用GDAL库的ogr2ogr将GeoJSON数据导入到PostgreSql中
数据下载
数据下载地址:https://datav.aliyun.com/portal/school/atlas/area_selector
我这里下载全国所有城市的数据进行导入
下载安装GDAL
以下是安装 ogr2ogr(GDAL 工具集的一部分)的步骤,适用于 Windows、macOS 和 Linux 系统。
Windows系统安装GDAL
下载 GDAL:
下载 GDAL:
访问 GISInternals 或 OSGeo4W 下载 GDAL 安装包。
选择适合你系统的版本(通常是 32 位或 64 位)。
安装:
下载后,运行安装程序,并按照提示完成安装。
确保选择安装命令行工具。
配置环境变量:
右键点击“此电脑”或“我的电脑”,选择“属性”。
点击“高级系统设置” > “环境变量”。
在“系统变量”中找到 Path,点击“编辑”。
添加 GDAL 的安装路径(例如:C:\Program Files\GDAL)。
验证安装:
打开命令提示符,输入以下命令:
如果显示版本信息,说明安装成功。
macOS系统安装GDAL
使用 Homebrew 安装: 如果没有安装 Homebrew,可以先在终端执行以下命令安装:
安装 GDAL:
验证安装: 在终端输入:
确认安装成功。
Linux系统安装GDAL
Debian/Ubuntu 系统:
打开终端,运行以下命令:
Red Hat/Fedora 系统:
使用以下命令:
验证安装:
在终端输入:
如果显示版本信息,说明安装成功。
我这里使用的是Ubuntu系统,按照成功会有以下提示:
在PostgreSql中创建表
GeoJSON 数据包含多个坐标并且表示一个多边形(Polygon),需要相应地调整表设计以支持存储 Polygon 类型的几何数据。
字段说明
id: 唯一标识符,自动递增。
name: 地物名称。
description: 对地物的详细描述。
type: GeoJSON 对象的类型,通常是 “Feature”。
geom: 存储 Polygon 类型的地理数据,使用 PostGIS 的 GEOMETRY 类型,并指定坐标系(这里使用 WGS 84,EPSG:4326)。
properties: 使用 JSONB 类型存储与地物相关的其他任意属性。
created_at: 记录创建时间。
updated_at: 记录最后更新时间。
索引
为了提高对空间数据的查询性能,可以创建空间索引:
GeoJSON 示例
GeoJSON 数据可能类似于以下结构:
ogr2ogr导入数据到表中
your_db:你的数据库名。
your_user:数据库用户名。
your_password:数据库密码。
your_data.geojson:你的 GeoJSON 文件名。
geo_data:目标表名。
导入完成后即可在表中查询到