首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >缓存地理空间计算还是动态计算?

缓存地理空间计算还是动态计算?
EN

Stack Overflow用户
提问于 2013-05-30 22:34:17
回答 1查看 278关注 0票数 1

我是一个服务车辆调度web应用程序的开发人员。它是用.Net 4+,MVC4编写的,使用的是SQL server。

有地理位置作为地理数据类型存储在数据库中。假设我们将资源从位置A发送到位置B,则驾驶时间/距离等。需要在一个点上显示。如果我用SQL Server的STDistance计算距离,它只会给出“乌鸦飞”的距离。因此,该系统将需要点击一个地理空间服务,如冰,谷歌,或ESRI,并获得实际的驾驶时间或建议的路线。问题是这是一个核心功能,会经常发生。

我应该用预先计算的距离或平均行驶时间预先填充查找表吗?缺点是甚至不需要添加更多的位置,即每次需要信息时都要搜索400万条记录。

最重要的是,大多数情况下,目的地不是我们存储的地理空间坐标之一,而是大陆上任何地方的地址或经度/纬度点,这使得预先计算变得不可能。

我正在努力避免性能问题,不得不不断地访问一些地理服务端点。

对于如何最好地实现这一点,有什么建议吗?

-thanks!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-06-02 10:15:41

之前看过这些问题,您不太可能能够将它们全部存储起来。

  1. 它通常是针对几乎所有的路由提供商TOS来缓存结果的。你有时可以协商这种能力,但它的成本很高。
  2. 假设没有一组固定的点要搜索,进行一次计算会给下一次计算带来很少的信息。

我想说的是,一旦他们被选中,你也许可以存储成对的路线,这样你就可以在需要的时候再次显示该路线。一旦交易完成,我将从您的数据库中删除路由。

如果您真的想缓存所有这些内容或对其进行更多控制,您可以使用PGRouting (带有PostgreSQL语言),然后获取街道数据。尽管我怀疑这是否值得你的努力。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16838976

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档