GIS 数据存储格式

GIS 数据存储方案根据数据类型(矢量/栅格/瓦片/3D) 、**使用场景(分析/展示/交换)部署环境(本地/云端/移动端)**呈现多样化生态。以下是系统性分类:


一、矢量数据格式

1. 传统文件格式

格式 特点 适用场景
Shapefile (.shp) 4文件碎片化、2GB限制、字段名10字符、无UTF-8 遗留系统兼容、政府数据交换(正在被淘汰)
GeoJSON (.geojson) 人可读、Web原生、无空间索引、体积大 Web API传输、小数据量可视化、前后端交互
KML/KMZ Google Earth 标准、支持样式和3D、臃肿 谷歌地球集成、汇报演示、简单路径规划
File Geodatabase (.gdb) Esri私有格式、支持拓扑、版本管理 ArcGIS 企业级编辑、复杂关系类数据

2. 现代高性能格式

格式 特点 适用场景
FlatGeobuf (.fgb) 二进制、流式读取、HTTP范围请求友好、支持空间索引 Web大矢量数据(百万级要素)、云原生传输、替代GeoJSON
GeoParquet (.parquet) 列式存储、压缩率高、兼容大数据生态(Spark/DuckDB) 空间大数据分析、数据湖仓、遥感时序分析
GeoPackage Shapefile 的现代替代品 通用矢量存储,在单个 SQLite 文件中存储矢量要素、栅格瓦片、属性数据和元数据

二、栅格/影像数据格式

1. 传统栅格

格式 特点 场景
GeoTIFF (.tif) 带坐标系的TIFF、最通用、无瓦片结构 遥感原始数据、正射影像、科学计算
IMG/HDF 多波段、元数据丰富、卫星标准格式 卫星遥感(MODIS/Landsat)、气象数据、海洋数据
JPEG2000 (.jp2) 高压缩比、有损/无损、支持流式 正射影像存档、Web影像服务(WMS)

2. 云原生栅格(Cloud-Native)

格式 特点 场景
COG (Cloud Optimized GeoTIFF) 内置瓦片+HTTP范围请求、无需下载整文件 云端遥感分析、在线可视化大影像、S3对象存储
GeoTIFF with Overview 金字塔分层、快速预览 大影像快速浏览

三、瓦片/地图渲染格式

格式 特点 场景
MBTiles MBTiles 是一种地图瓦片(Map Tiles)存储格式规范,由 Mapbox 创建并开源。它将地图瓦片数据打包存储在 SQLite 数据库中,使地图可以以单个文件的形式进行分发、存储和传输。 离线地图、移动端优化、瓦片缓存、数据分发
XYZ 目录 标准瓦片文件夹结构(z/x/y.png Web地图服务快速搭建、CDN分发
Vector Tile Format (.mvt/.pbf) Mapbox Vector Tile 规范、Protobuf 压缩 WebGL 矢量渲染(Mapbox/MapLibre)、动态样式
PMTiles 单文件、HTTP范围请求、无服务器架构、比MBTiles更适合Web 静态网站托管(GitHub Pages/Vercel)、低成本地图服务
Terrarium (.png 编码高程) PNG 像素存储高程值(RGB→高程) 客户端3D地形生成(Cesium/Three.js)

四、空间数据库(企业级/生产环境)

数据库 特点 场景
PostGIS PostgreSQL 扩展、最强大空间函数、GIS黄金标准 企业级GIS、复杂空间分析、Web服务后端、多用户并发编辑
SpatiaLite SQLite 空间扩展、轻量级、单文件 嵌入式GIS、桌面应用、移动端本地数据库
SQL Server Spatial 微软生态集成 企业.NET应用、与业务数据库集成
Oracle Spatial 企业级、成本高、功能全 金融、电信级大规模空间资产管理系统
MongoDB (GeoJSON) 文档型、分片友好、2dsphere索引 实时位置服务(LBS)、IoT轨迹存储、快速开发
Elasticsearch 倒排索引+地理查询 地理日志分析、位置搜索(GeoSearch)、可视化(Kibana)

五、3D与点云专用格式

格式 特点 场景
3D Tiles (.b3dm/.i3dm) Cesium 标准、LOD层级、Web传输优化 数字孪生、城市CIM、BIM+GIS融合、倾斜摄影
I3S (Scene Layer) Esri 索引3D场景、SLPK 包 ArcGIS Urban、三维城市可视化
LAS/LAZ 点云标准格式、LAZ压缩版 激光雷达原始数据存档
COPC (Cloud Optimized Point Cloud) 云原生点云、HTTP范围请求、类COG设计 在线点云分析(无需下载TB级数据)、Web点云可视化
EPT (Entwine Point Tile) 分层八叉树结构、Potree 可视化 Web端海量点云渲染(十亿级点)
IFC/DAE/OBJ+GLTF BIM模型格式 建筑信息模型与GIS集成

六、网格/离散化索引(空间分析)

方案 特点 场景
H3 (Uber) 六边形网格、层级嵌套、无边界效应 聚合分析(热力图)、出行需求预测、蜂窝统计
Geohash 字符串编码、Z序曲线、前缀匹配 URL友好的位置编码、数据库索引、简单距离排序
S2 Geometry (Google) 球面四叉树、保形性、单元格层级 全球索引、位置服务后端、游戏地图分区
DGGS (离散全球网格) 等面积网格、多层级 全球尺度分析、海洋/气候建模

七、云原生/大数据方案

方案 架构 场景
STAC (SpatioTemporal Asset Catalog) 标准化API描述遥感影像位置+时间 遥感数据湖、多时相影像检索
Zarr 分块压缩数组、云存储友好 NetCDF替代、气候/海洋大数据立方体
Apache Sedona (GeoSpark) Spark 空间扩展 TB级空间数据ETL、分布式缓冲区分析
DuckDB + spatial 嵌入式分析型数据库、GeoParquet原生支持 本地大CSV/Parquet分析、零配置GIS

八、选型决策树

复制代码
数据量小 (<10MB) + Web传输 → GeoJSON
矢量大数据 + 分析 → GeoParquet / PostGIS
矢量大数据 + Web可视化 → FlatGeobuf / PMTiles (矢量)
栅格云端分析 → COG / STAC
移动端离线编辑 → GeoPackage / MBTiles (只读浏览)
3D城市可视化 → 3D Tiles / I3S
企业级生产 → PostGIS
点云在线查看 → COPC / EPT

一句话总结 :GIS 存储正从文件交换 (Shapefile)向云原生流式访问 (FlatGeobuf/COG/COPC/PMTiles)和大数据分析 (GeoParquet/PostGIS)双重演进,选择的核心在于是否需要编辑 (选数据库)、是否云端分析 (选云原生格式)、是否Web实时传输(选现代紧凑格式)。

相关推荐
丷丩12 天前
MapLibre GL JS第50课:用表达式创建虚线渐变线
javascript·gis·mapbox·maplibre gl js
丷丩13 天前
MapLibre GL JS第49课:用表达式创建渐变线
gis·可视化·地图·mapbox·maplibre gl js
丷丩13 天前
MapLibre GL JS第48课:用数据驱动属性样式化线
gis·地图·样式·mapbox·maplibre gl js
丷丩14 天前
MapLibre GL JS第47课:添加动画图标
javascript·gis·动画·mapbox·maplibre
丷丩14 天前
错误处理与容错机制:GeoAI-UP的降级策略设计
架构·gis·容错设计
丷丩15 天前
MapLibre GL JS第46课:用Markers添加自定义图标
gis·可视化·mapbox·maplibre gl js
丷丩16 天前
MapLibre GL JS第44课:生成并添加缺失图标
前端·javascript·gis·mapblibre gl js
阿川201517 天前
智能体爆发,HPE存储以创新架构解锁混合云与AI红利
人工智能·存储·智能体·hpe
极客先躯18 天前
高级java每日一道面试题-2026年02月02日-实战篇[Docker]-如何实现容器的持久化存储?
docker·容器·面试宝典·持久化·存储·韵味·java高级面试题
GISBox19 天前
告别DEM数值枯燥:GISBox如何用颜色和等高线“翻译”地形
gis·等高线·地形·gisbox·geotiff·高度着色·地形高程可视化