我对设计用于保存时空数据的关系数据库表的最佳实践感兴趣。具体而言,将保留在此类表中的数据是具有特定有效期、几何定义以及层次方面的自定义几何(某些几何将是其他几何的子对象)。
我很好奇是否有人可以向我指出有关此主题的好材料或可以建议具体实施。
谢谢你。
我对设计用于保存时空数据的关系数据库表的最佳实践感兴趣。具体而言,将保留在此类表中的数据是具有特定有效期、几何定义以及层次方面的自定义几何(某些几何将是其他几何的子对象)。
我很好奇是否有人可以向我指出有关此主题的好材料或可以建议具体实施。
谢谢你。
我会使用 PostGIS ( http://postgis.refracions.net/ ) 作为几何类型并制作一个像这样的表格:
CREATE TABLE data (
geometry geometry,
valid_from timestamp,
valid_till timestamp,
check(valid_till >= valid_from)
);
PostGIS 可以进行空间查询,因此您可以在数据库中查询特定几何中的所有几何(例如查询代表州或县的几何中的所有几何)。
要获取有效期,您应该向此查询添加附加条件,以便仅获取 where 的行(valid_from >= now() and valid_till <= now())
。
当然,您还需要所有三列的索引。在几何列上应该有一个空间索引。
您可以在 PostGIS 站点上找到有关空间查询和几何类型和几何索引的所有信息。