对比
FlatGeobuf 与 GeoPackage:分发和 SQL 管理
FlatGeobuf 是二进制地物集合,GeoPackage 是保存地理数据的 SQLite 数据库。
应该选择哪种格式?
静态图层分发和部分读取考虑 FlatGeobuf,多图层和瓦片的统一管理考虑 GeoPackage。
适用于 FlatGeobuf
分发静态地物图层
- 用兼容工具按范围读取地物
适用于 GeoPackage
在单个文件中分发和使用地理空间数据
- 为 GIS 或离线使用组合矢量要素、栅格瓦片和属性
基本信息
| 项目 | FlatGeobuf | GeoPackage |
|---|---|---|
| 扩展名 | .fgb | .gpkg |
| MIME 类型 | application/geopackage+sqlite3 | |
| 常见用途 | 分发静态地物图层 | 在单个文件中分发和使用地理空间数据 |
| 打开方式 | 用兼容 GIS 检查图层、CRS、属性类型及索引。HTTP 部分读取需要 Range 支持和适当分发设置。对未知数据保持缓冲区验证开启。 | 使用支持 GeoPackage 的 GIS 软件(如 QGIS)打开,并检查图层、坐标参考系和扩展。SQLite 工具可能能显示其表,但解释几何和地图瓦片需要兼容软件。 |
| 导出或转换 | 转换为 GeoPackage 后核对数量、CRS、坐标、Z/M 和属性类型。多图层拆成多个 .fgb。GeoPackage 的瓦片和扩展不能全部映射到地物文件。 | 可以导出为 GeoJSON、Shapefile 或 MBTiles。目标格式未必保留所有图层、属性、坐标参考系或瓦片;导出后应检查要素数量、坐标、属性和地图显示结果。 |
按用途选择
用兼容工具按范围读取地物
分发静态地物图层
FlatGeobuf为 GIS 或离线使用组合矢量要素、栅格瓦片和属性
在单个文件中分发和使用地理空间数据
GeoPackage关键点 1
FlatGeobuf 空间索引是可选的。
进一步了解差异关键点 2
GeoPackage 可保存地物、瓦片、属性和规定元数据。
进一步了解差异进一步了解差异
核对更新需求和接收端支持。在相同数据、索引、实现和分发条件下测量性能。
- FlatGeobuf 不以任意位置写入为目标。GeoPackage 可用 SQL 更新,但要保持 GIS 要求和一致性。
- 导出 .fgb 时拆分图层,核对 CRS、Z/M、NULL 几何和属性类型。瓦片及自定义扩展另行保存。
常见问题
转换就能保留全部信息吗?
不能保证。核对选中图层、几何、属性、CRS 和实现支持,并保留原本。不能只凭格式名称保证完整保留。