计算或保存空间数据

时间:2012-04-09 13:37:52

标签: postgis

在像Postgis这样的数据库中处理空间数据时,是否可以在每个SELECT上计算两个多边形的交点或多边形的面积?或者,在INSERT,UPDATE或DELETE语句上进行计算并将结果保存在表的列中是否更好的性能问题?大空间数据库中的方法如何?

感谢您的回答。

1 个答案:

答案 0 :(得分:0)

这个问题太抽象了。

当然,如果您使用交叉区域(ST_Intersection),则应存储ST_Intersection几何的结果。但实际上我们经常必须在飞行中计算交叉点,因为入口参数取决于动态参数(例如,温度<30℃的区域与风的面积> 20ms的交叉点)。顺便说一下,您可以使用VIEW以这种方式简化查询。

当然,如果您的表包含几何列参数或其中一个是常量,则最好存储交集。特别是,您可以为此列构建空间索引。

没有任何不变的规则。您应该遵循实践条件:数据库的大小,使用的类型等。例如,我存储生成的椭圆(置信区域)用于雷击点,但我不存储交叉(布尔)与电力线的事实,因为那些交叉点可以参数化。