0

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

感谢您的回答。

4

1 回答 1

0

这个问题太抽象了。

当然,如果您使用交叉区域 ( ST_Intersection),您应该存储ST_Intersection几何结果。但在实践中,我们经常不得不即时计算交叉点,因为入口参数取决于动态参数(例如,温度<30C 的区域与风的区域> 20 ms 的交叉点)。顺便说一句,您可以使用 VIEW 以这种方式简化查询。

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

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

于 2012-04-18T08:26:59.460 回答